如标题所述,我们以前使用 cursor.requery()
来调用该函数,但现在它已经被废弃了,目前应该如何调用这个函数?
该方法已被废弃,请勿使用。只需请求一个新游标即可,这样您就可以异步地执行此操作,并在新游标返回后更新您的列表视图。
那么,如何请求一个新的游标并将其传递回适配器呢?
如标题所述,我们以前使用 cursor.requery()
来调用该函数,但现在它已经被废弃了,目前应该如何调用这个函数?
该方法已被废弃,请勿使用。只需请求一个新游标即可,这样您就可以异步地执行此操作,并在新游标返回后更新您的列表视图。
那么,如何请求一个新的游标并将其传递回适配器呢?
想象一下,当你需要反复使用光标时,你需要填充一个块并用查询进行操作。在重复使用之前,请关闭它。
{
Cursor c =//Populating cursor again
while (c.moveToNext()) {
}
if (c != null) c.close();
}
swapCursor()
来刷新数据。我使用了ListAdapter.notifyDataSetChanged();这只在列表(如ArrayList)中,当列表内容改变时才有效。
使用数据库输出后,它不再起作用。因此,我采用了cursor.requery();,但它不仅已经过时,而且只有在数据库条目更改时才有效。
但现在,我想通过在数据库中更改设置来更改我的视图(在生日和日期之间切换),所以requery无法识别它。
对于所有更改都有效(有点不太好的方法):this.onCreate(null);