AdapterView具有如下属性:
1、继承了ViewGroup
2、可以包括多个列表项,并将多个列表项以合适的形式显示出来。
3、显示多个列表项,由Adapter提供。调用AdapterView的setAdapter(Adapter)方法设置Adapter即可。
ListView和ListActivity
ListView的实现第一种方式:继承Activity
1)在布局文件中配置ListView的属性。
Android:entries=”@array/courses”:设置显示数组数据,
android:divider=”#ff0000”:设置每项的分割条
android:dividerHeight=”2dp”:设置分割条的高度
其添加setOnItemClickListener(OnItemClickListener)事件和setOnItemLongClickListener(OnItemLongClickListener)事件
总结:使用数组创建ListView十分简单。
但这种方式能定制的内容很少,数据不灵活。甚至连每个列表项的字号大小,颜色都不能改变。如果想对ListView的外观,行为进行定制,需要把ListView作为AdapterView使用,通过Adapter控制每项的外观和行为。
2)ArrayAdapter:简单,易用的Adapter,通常用于将数组或List集合的多个值包装成多个列表项
SimpleAdapter:并不简单,功能强大的Adapter,可以用于将List集合的多个对象包装成多个列表项
SimpleCursorAdapter:与SimpleAdapter相似,只是用于包装Cursor提供的数据
BaseAdapter:通常用于被扩展,可以对各列表项进行最大限度的定制
3)在布局文件中配置ListView使用ArrayAdapter为其添加显示数据、配置不同布局方式。
下面的布局都是Android系统自带的:android.R.layout
simple_list_item_1:每项显示一个内容时
simple_list_item_single_choice:带有单选框的布局形式
需要结合ListView中的setChoiceMode(ListView.CHOICE_MODE_SINGLE);
simple_list_item_multiple_choice:带有多选框的布局形式
需要结合ListView中的setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
simple_list_item_checked:带有选择框的布局形式
也需要结合ListView中的setChoiceMode
总结:这种方式能够指定灵活的数据,但是界面比较单一,
每个列表项都是TextView组件。
也可以自定义布局文件,并且提供一个TextView组件.
4)SimpleAdapter,在布局文件中配置ListView
使用SimpleAdapter为其添加显示数据、实现自定义布局
SimpleAdapter(Context context, List