我正在使用commnsware的Sqliteloader,这看起来很简单,因为没有内容提供者的帮助,我只能使用简单的SQL查询来使用加载器功能。
现在,点击一个按钮,我正在填写一个表格并将该项目插入数据库。
ContentValues values = new ContentValues();
values.put(Tbldata.ACCOUNT, getActiveAccount());
values.put(Tbldata.time, dateobj.getTime());
getWritableDatabase().insert('Tbldata', 'ACCOUNT', values);
在此次通话结束后,我将在我的活动上调用finish()
,然后返回我的列表视图。这里列表视图项未更新
更新listview
的最佳方式是什么?,我应该这样调用requery吗?
mLoaderManager.initLoader(0, null, this);
这是正确的做法吗?
答案 0 :(得分:1)
更新listview的最佳方法是什么?
致电insert()
上的SQLiteCursorLoader
,而不是SQLiteDatabase
。引用the documentation:
如果您使用
insert()
,update()
,delete()
,replace()
和execSQL()
上的SQLiteCursorLoader
方法,即加载程序 框架会自动更新您以反映新的Cursor
包含已更改的数据。这些方法需要 与SQLiteDatabase
上的参数相同。
请注意,我不再维护SQLiteCursorLoader
。