根据一个制作列表的程序开始练手,结果就出现了学习安卓的第一个代码问题

Android中Adapter总结-LMLPHP

运行程序发现,虽然报错,但是可以成功运行程序。

Android中Adapter功能为 显示ListView,最常用的有ArrayAdapter,SimpleAdapter,SimpleCursorAdapter,以及重写BaseAdapter等

ArrayAdapter只用于显示文字,而SimpleAdapter则有很强的扩展性,可以自定义出各种效果,SimpleCursorAdapter则可以从数据库中读取数据显示在列表上,通过从写BaseAdapter可以在列表上加处理的事件等。

ArrayAdapter的公有构造函数

 public ArrayAdapter (Context context, int textViewResourceId);

 public ArrayAdapter (Context context, int resource, int textViewResourceId);

 public ArrayAdapter (Context context, int textViewResourceId, T[] objects);

 public ArrayAdapter (Context context, int resource, int textViewResourceId, T[] objects);

 public ArrayAdapter (Context context, int textViewResourceId, List<T> objects);

 public ArrayAdapter (Context context, int resource, int textViewResourceId, List<T> objects);

参数介绍:

context    当前的环境变量,可以显示一行文字的一个布局文件,和一个List的集合,也就是数据源。

resource   包含一个TextView的布局文件的资源ID

textViewResourceId  布局文件中每个列表项的外观样式,可以自己写,也可以用系统的,如下为系统原代的,自己写的布局中包含一个TextView就可以了。

simple_list_item_1:每个列表项都是一个普通的textView
simple_list_item_2:每个列表项都是一个普通的textView(字体略大)
simple_list_item_checked:每个列表项都是一个已勾选的列表项
simple_list_item_multiple_choice:每个列表项都是带多选框的文本
simple_list_item_single_choice:每个列表项都是带单选框的文本

objects  代表ListView中所有对象的集合,可以是一个数组或一个List

以下两种方法都没有办法解决:

 ArrayAdapter<String> nameAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1 ,data);

 ArrayAdapter<String> nameAdapter = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1 ,data);

SimpleCursorAdapter——把Cursor中得到的数据进行列表显示,并可以把指定的列映射到指定的TextView上。

再续...

参考:https://my.oschina.net/u/658933/blog/372151

05-08 15:19