我有一个数据库,一个ListView和一个CustomCursorAdapter扩展CursorAdapter.菜单按钮将项添加到数据库.我希望ListView更新并显示此更改.通常情况下,在我转到主屏幕并重新打开应用程序之前,它不会显示此新项目.
我最终通过调用cursor.requery()或mCustomCursorAdapter.changeCursor(newCursor)每当我添加一个新项目来CursorAdapter使它工作,但是当我在构造函数中将autoRequery设置为false时,它的工作原理相同.当autoRequery设置为false时,为什么会正确更新?
我使用CursorAdapter得当吗?使用数据库更新列表的标准方法是什么?autoRequery有什么作用?
我有一个ListView,它使用CursorAdatper作为其适配器.我想要列表视图
我试过了:
CursorAdapter adapter = (CursorAdapter)listView.getAdapter();
adapter.notifyDataSetChanged();
Run Code Online (Sandbox Code Playgroud)
我试过了:
CursorAdapter adapter = (CursorAdapter)listView.getAdapter();
adapter.getCursor().requery();
Run Code Online (Sandbox Code Playgroud)
但都没有用.我在我ContentProvider的查询方法中设置了一个断点,但我没有看到调用的requery或我的ListView被新数据刷新.
你能告诉我解决问题的方法是什么吗?
谢谢.