用ArrayAdapter做一个在ListView中显示文字的案例,非常简单,只显示一行文本:
//注意,android中创建ListView有两种方式【1、在layout布局文件中定义listview控件2、直接让你的activity继承ListActivity】
这里,我直接采用继承ListActivity来实现。
1.创建一个Android项目(本例中命名ArrayAdapterTest)
2.在你的activity中的onCreate方法中开始构建一个ListView(这里是关键一步),关键代码如下:
public class ArrayAdapterActivity extends ListActivity{
public void onCreate(Bundle savedInstanceState)
{
{
//注意因为是直接继承的ListActivity,所以这里不用setContentView方法来显示一个UI
super.onCreate(savedInstanceState);
//定义一个String类型的数组来作为显示在ListView上的数据
String[] arr = { "孙悟空", "猪八戒", "唐僧" };
String[] arr = { "孙悟空", "猪八戒", "唐僧" };
//构建一数组适配器,然后把上面定义的数组放到该适配器中
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_multiple_choice, arr);
// 设置该窗口显示列表
setListAdapter(adapter);
}
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_multiple_choice, arr);
// 设置该窗口显示列表
setListAdapter(adapter);
}
}
使用new ArrayAdapter<T>(context, resource, textViewResourceId)来连接ListView视图和数组数据,这三个参数分别表示=》
context=》上下文,即所在Activity
resource=》android中内置的一个布局样式,控制ListView以什么形式显示,根据需要选择.(注意它是系统定义好的,只显示一行文字)
textViewResourceId=》第三个参数就是数据源,要显示在ListView上的数据(即本例中定义的String数组)
运行效果如下(因为本例中第二个参数使用的是一个带复选框的样式,故每一行后面都有一个复选框,可以自己尝试不同的):
