关于这个异常
08-15 06:01:28.906: E/AndroidRuntime(2831): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.day12/com.example.day12.ContactActivity}: java.lang.IllegalArgumentException: column '_id' does not exist
08-15 06:01:28.906: E/AndroidRuntime(2831): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
解决方案是找到你创建数据库时的SQL语句 把第一个字段名( id ) 改为 _id 就可以了。查询时的SQL语句如果用到了 这个字段 也同样的需要改掉。
具体的原因是因为SimpleCursorAdapter得父类 CursorAdapter 的一个规定 。如下图