ArrayAdapter 比较适合,数据比较简单的. 比如就是一个 字符串的数组或集合. 面 SimpleAdapter 用在第个Item里显示的数据比较多的情况下, 它的数据的形式一般是一个 Map<String,Object> 的集合 List<Map<String,Object>>, 它里面是个Map,所以可以存放多个不同类型的数据,比如 字符串,图标等 . 这里说的是数据, 样子的话. 这两种Adapter都可以自己去定义布局文件.
在 Android 开发笔记一 中我们已经讲解了 SimpleAdapter的使用. 这里介绍下 ArrayAdapter的使用. 要比SimpleAdapter简单很多.
1. 定义一个字符数组或集合. 做为你要显示的数据
String[] strArr = new String[] {"Hello","Android","world"};
2. 创建一个 ListView中的Item的界面布局文件
虽然我们要显示的数据只是一个字符串. 但你的布局文件中可以放多个组件, 比如可以放个 图标. + TextView + Button 这样的组合. 当然.因为这里我们传的数据只有一个字符串, 所以只有其中一个可以显示动态的数据,这里我们让 TextView来显示. 其它两个. 图标 与 Button 就是固定的样子了~ 如果这两个你也想去接收动态传入的数据的话, 那你只能去使用 SimpleAdapter了.
3. 创建 我们的 ArrayAdapter
// 创建一个ArrayAdapter .第一个参数 : Context上下文 第二个: 就是我们的ListView中的Item的布局文件 第三个 :就是告诉Adapter在这个布局文件中让哪个控制来显示我们传入的字符串.
ArrayAdapter<String> aa = new ArrayAdapter<String>(this, R.layout.list_item, R.id.textView1, strArr);
4. 将这个 ArrayAdapter 赋给ListView 即可.
ListView.setAdapter(aa);
最后的效果如下 :