android:Spinner(下拉框)控件的使用

创建页面文件(main.xml)

1<Spinner

2android:id="@+id/spinner1"

3android:layout_width="match_parent"

4android:layout_height="wrap_content"/>

5

6<TextView

7android:id="@+id/tvResult"

8android:layout_width="match_parent"

9android:layout_height="wrap_content"

10android:text="选择的水果"/>

创建下拉框的数据源

1List<String>list=newArrayList<String>();

2list.add("苹果");

5list.add("香蕉");

7list.add("橘子");

9list.add("香蕉");

创建适配器(下拉框的数据源是来自适配器)

ArrayAdapter<String>adapter=newArrayAdapter<String>(this,android.R.layout.simple_spinner_item,list);

为适配器添加样式

adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

系统提供的样式如下

lsimple_spinner_dropdown_item(列表-间距较高比较好看)

clip_image004[10]

lsimple_spinner_item(列表-间距紧凑不好看)

clip_image006[10]

lsimple_list_item_checked(复选框-选中的有绿沟)

clip_image008[10]

lsimple_list_item_single_choice(单选按钮)

clip_image010[10]

向控件Spinner添加适配器

1Spinnersp=(Spinner)findViewById(R.id.spinner1);

2sp.setAdapter(adapter);

释义

1.setAdapter(SpinnerAdapteradapter),从类的继承关系上看,ArrayAdapter是SpinnerAdapter接口的间接实现类

clip_image012[10]

实现选择项事件(使用匿名类实现接口)

1sp.setOnItemSelectedListener(newOnItemSelectedListener(){

2//parent:为控件Spinnerview:显示文字的TextViewposition:下拉选项的位置从0开始

3publicvoidonItemSelected(AdapterView<?>parent,Viewview,intposition,longid){

4TextViewtvResult=(TextView)findViewById(R.id.tvResult);

5//获取Spinner控件的适配器

6ArrayAdapter<String>adapter=(ArrayAdapter<String>)parent.getAdapter();

7tvResult.setText(adapter.getItem(position));

8}

9//没有选中时的处理

10publicvoidonNothingSelected(AdapterView<?>parent){

11}

12});

后台整体代码如下

1publicvoidonCreate(BundlesavedInstanceState){

2super.onCreate(savedInstanceState);

3setContentView(R.layout.main);

4List<String>list=newArrayList<String>();

5list.add("苹果");

6list.add("香蕉");

7list.add("橘子");

8list.add("香蕉");

9ArrayAdapter<String>adapter=newArrayAdapter<String>(this,android.R.layout.simple_spinner_item,list);

10adapter.setDropDownViewResource(android.R.layout.simple_list_item_single_choice);

11Spinnersp=(Spinner)findViewById(R.id.spinner1);

12sp.setAdapter(adapter);

13sp.setOnItemSelectedListener(newOnItemSelectedListener(){

14//parent:为控件Spinnerview:显示文字的TextViewposition:下拉选项的位置从0开始

15publicvoidonItemSelected(AdapterView<?>parent,Viewview,intposition,longid){

16TextViewtvResult=(TextView)findViewById(R.id.tvResult);

17//获取Spinner控件的适配器

18ArrayAdapter<String>adapter=(ArrayAdapter<String>)parent.getAdapter();

19tvResult.setText(adapter.getItem(position));

20}

21//没有选中时的处理

22publicvoidonNothingSelected(AdapterView<?>parent){

23}

24});

25}

更多相关文章

  1. 安卓巴士Android开发神贴整理
  2. Android(安卓)Adapter
  3. android控件属性
  4. Android(总结):控件居中|水平居中|垂直居中
  5. 关于android.R.id.text1
  6. 介绍三个Android支持库控件:TabLayout+ViewPager+RecyclerView
  7. android界面开发小结——android笔记---控件和布局
  8. android重要控件各种大全
  9. android控件属性(中文)

随机推荐

  1. android与h5的互相交互传参
  2. Android(安卓)内存浅析【泄漏、溢出】【
  3. 关于Android(安卓)studio的报错无法downl
  4. android studio 增加依赖
  5. android 解决键盘弹出后输入框被下方控件
  6. Android(安卓)APK反编译方法(可以获取APK
  7. Android(安卓)日志获取总结
  8. [Android]度量单位dip介绍
  9. android 4.4 Settings分析
  10. android SQLite使用SQLiteOpenHelper类对