为了保证用户界面显示的内容与底层数据一致,应用程序需要监视底层数据的变化,如果底层数据更改了,则用户界面也需要修改显示内容。在使用适配器绑定界面控件和底层数据之后,应用程序就不需要在监视底层数据变化,从而极大地简化了代码的复杂性。
Spinner
Spinner 是从多个选项中选出一个选项的控件。
1.添加控件
(步骤略)
android:id="@+id/spinner1"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
2.建立数组适配器 ArrayAdapter
MainActivity.java 代码如下:
//Spinner
Spinner spinner = (Spinner)findViewById(R.id.spinner1);
//1.建立一个字符串数组列表
Listlist = new ArrayList();
//2.使用add()函数向数组列表中添加三个字符串
list.add("Spinner子项1");
list.add("Spinner子项2");
list.add("Spinner子项3");
//3.建立一个ArrayAdapter的数组适配器,将Spinner和ArraryList绑定到一起
// 所有ArrayList中的数据将显示在Spinner的浮动菜单中
ArrayAdapteradapter = new ArrayAdapter(this,android.R.layout.simple_spinner_item,list);
//4.设置spinner浮动菜单的显示方式
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
//5.绑定过程
spinner.setAdapter(adapter);
说明:
ArrayAdapter数组适配器能够将控件和底层数据绑定到一起。
代码说明见源码注释
3.示例程序
如图,Spinner子项显示的内容是MainActivity中设置的底层数据,而不是在添加控件时设置内容。