第12章 高级UI组件
1. 什么是Android视图组件的数据绑定方式?
答:
Android视图组件的数据绑定方式是指将数据集里的数据项与视图界面组件之间建立对应关系,当一个视图组件与某个数据项绑定后,数据项内容改变时就会自动改变视图中内容。数据项通常是数组元素、数据库字段、ContentProvider中表格中的列等。
2. 什么是Adapter?什么是AdapterView?两者有何关系?
答:
(1)Adapter 提供了对数据项的访问,并且负责为每个数据项生成一个视图(View)对象。
Adapter 是一个接口(Interface)并不能直接创建对象,程序员必须建立实现 (Implements)Adapter 接口的类,才能利用这个自定义类的对象来绑定数据到视图组件,但 Android 已经提供了一系列 实现了 Adapter 接口的类,如: BaseAdapter、ArrayAdapter、SimpleCursorAdapter 等。
(2)AdapterView 类是一个能绑定数据的视图(View)类型, 是ViewGroup 的子类,能被 Adapter 绑定的 UI 控件必须继承 AdapterView 类。
(3)Adapter (适配器)能在 AdapterView 对象和底层数据之间起到桥梁作用,即将数据绑定到UI界面。
3. 请根据程序中注释要求在空白划线处填写代码。
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.spinner);
m_txtView=(TextView)this.findViewById(R.id.TextView01);
m_Spinner=(Spinner)this.findViewById(R.id.Spinner01);
//新建元素类型为String的ArrayAdapter对象adapter,参数中指定该对象与
//数组 m_bloods数据绑定,界面布局指定为android.R.layout.simple_spinner_item______________________________________________________________________;
/设置列表中视图组件排列为下拉式风格:
//android.R.layout.simple_spinner_dropdown_item
______________________________________________________________________;
//为m_Spinner中设置adapter对象
______________________________________________________________________;
//为Spinner对象添加选中项事件监听器对象m_SpinnerListener
______________________________________________________________________;
//将Spinner对象设置为可见
______________________________________________________________________;
}
答:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.spinner);
m_txtView=(TextView)this.findViewById(R.id.TextView01);
m_Spinner=(Spinner)this.findViewById(R.id.Spinner01);
//新建元素类型为String的ArrayAdapter对象adapter,参数中指定该对象与
//数组 m_bloods数据绑定,界面布局指定为android.R.layout.simple_spinner_item
adapter=new ArrayAdapter(this,
android.R.layout.simple_spinner_item,m_bloods);
//调用adapter对象方法设置为
//下拉式视图资源android.R.layout.simpl