1:simpleadapter
格式:SimpleAdapter s=new SimpleAdapter(context, data, resource, from, to)
各个参数解释如下:(Context context, List<? extends Map<String, ?>> data, int resource, String[] from, int[] to)
context 是上下文对象,data是一个list集合,list里面是数据是map集合,resource是你的布局文件(每一个item的布局文件) ,from是一个string数组里面放的是map中对应的key值,to 是一个int型数组,里面放的是item布局文件控件的id,与前面的string数组值一一对应
2:arrayadapter
格式:ArrayAdapter(Context context, int resource, int textViewResourceId, String[] objects)
resource是item布局文件的id,textViewResourceId是item中布局文件的控件id,objects 数据源,要加载的数据。
注意:arrayadapter 只能加载一个数组的数据,格式比较单一。而ssimpleadapter可以加载很多数据,根据自己的定义
3:CursorAdapter
格式: SimpleCursorAdapter(Context context, int layout, Cursor c, String[] from, int[] to)
各个参数的含义与上面的simpleadapter相似,c代表数据源(可以从数据库中获取,不过不能关闭数据库)
当然如果你的数据库的表的主键不是_id,所以会报错解决的方法:
一:修改数据库的主键
二: 在生成的cursor的数据库函数中重命名。例如: Cursor cursor=db.rawqurey("select personid as _id ,name ,age from person",null);这样,在生成 的cursor中的主键就是_id了,就不会出错了