Cursor.requery() 是一种非常常用的方法,用于刷新 ListView 的内容。但是为什么这种方法被标记为“已弃用”?我无法非常清楚地理解 API 文档中的原因。
Cursor.requery() API:http: //developer.android.com/reference/android/database/Cursor.html#requery ()
谁能进一步解释原因?谢谢:)
Cursor.requery() 是一种非常常用的方法,用于刷新 ListView 的内容。但是为什么这种方法被标记为“已弃用”?我无法非常清楚地理解 API 文档中的原因。
Cursor.requery() API:http: //developer.android.com/reference/android/database/Cursor.html#requery ()
谁能进一步解释原因?谢谢:)
我相信它已经完成了,因为引入了新的Loaders API来简化异步查询游标。
正如弃用说明所说
不要使用这个。只需请求一个新游标,这样您就可以异步执行此操作,并在新游标返回后更新您的列表视图。
这就是我们应该使用的。
更新
似乎它也可能与弃用有关Activity.startManaginCursor
:
startManagingCursor(Cursor c) 此方法已弃用。将新的 CursorLoader 类与 LoaderManager 一起使用;这也可以通过 Android 兼容包在旧平台上使用。此方法允许活动根据活动的生命周期为您管理给定游标的生命周期。也就是说,当活动停止时,它会自动在给定的光标上调用 deactivate(),当它稍后重新启动时,它会为你调用 requery()。当活动被销毁时,所有托管游标将自动关闭。如果您的目标是 HONEYCOMB 或更高版本,请考虑改用 LoaderManager,可通过 getLoaderManager() 获得