我有一个通过 CursorAdapter 填充的 ListView。我让我的用户能够更改列表中的数据。例如,用户可以将一行标记为未读(数据是消息)。
假设我的用户标记了一行未读。正确的实现会将数据库中的行标记为已读,然后重新查询光标吗?
最佳答案
是的,这就是正确的答案。 requery()
将触发 CursorAdapter
的自动更新,这将触发 ListView
的自动更新,这将触发用户的自动微笑。 :-)
更新 requery()
方法已弃用。现在更好的方法是运行查询以获取新的 Cursor
,然后在 changeCursor()
上使用 swapCursor()
或 CursorAdapter
。
关于android - 使用 CursorAdapter 更改 ListView 数据的正确实现,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3639369/