博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android中SimpleCursorAdapter _id错误的问题
阅读量:6692 次
发布时间:2019-06-25

本文共 1009 字,大约阅读时间需要 3 分钟。

作为一个android新手,在绑定数据的时候是这样的

ListView listview=(ListView)this.findViewById(R.id.listView1);                XJDal xj=new XJDal(MainActivity.this);         Cursor cur=xj.Query(); 		ListAdapter ad=new SimpleCursorAdapter(this, 				android.R.layout.simple_expandable_list_item_2, 				cur,				new String[]{"timeflag","type"},                new int[]{android.R.id.text1,android.R.id.text2} );         	listview.setAdapter(ad);

查询语句

public Cursor Query()	 {		 return db.query("XJ", new String[]{"timeflag","type"}, null, null, null, null, null); 	 }

这个时候运行总是报错,其中有一行

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.sclock/com.sclock.MainActivity}: java.lang.IllegalArgumentException: column '_id' does not exist

缺少了一列_id。

_id是用来干什么的?

SimpleCursorAdapter只识别_id作为主键

所以我们需要把上面查询的代码修改一下,添加一个_id的值,如果你的数据库中没有的话可以将主键 as _id。

public Cursor Query()	 {		 return db.query("XJ", new String[]{"_","timeflag","type"}, null, null, null, null, null);		 	 }

转载于:https://www.cnblogs.com/ac1985482/p/3147962.html

你可能感兴趣的文章
C# extern 修饰符的用法
查看>>
Zabbix修正错误两例(只提供解决思路)
查看>>
Redhat6.X 配置HP3PAR7200存储多路径过程
查看>>
Java基础系列19:使用JXL或者POI生成和解析Excel文件
查看>>
使用xshell打开centos中文显示为乱码
查看>>
达内实习——数据库编程、文件读写数据
查看>>
zabbix 监控percona
查看>>
我的友情链接
查看>>
HA高可用集群基础概念和原理
查看>>
MySQL over函数的用法
查看>>
Linux命令(9):mkdir命令
查看>>
vmstat命令
查看>>
poj2245 Lotto
查看>>
我的友情链接
查看>>
Oracle版本升级
查看>>
sizeof 的使用(标记一下)
查看>>
第 四 十 天:关 于 正 则 的 一 些 小 用 法
查看>>
编程 -- awk
查看>>
2012 #3 Arcane Numbers
查看>>
python 列表模拟堆栰
查看>>