2012-07-31 47 views
10

我用SimpleCursorAdapter将我从database读取的数据发送到ListView在SimpleCursorAdapter中使用哪个标志?

SimpleCursorAdapter有2个标记,其中一个标记已弃用。

我应该总是使用FLAG_CONTENT_OBSERVER吗?

还是使用别的东西代替SimpleCursorAdapter更好?

+1

请参阅http://stackoverflow.com/q/8790659/1300995和http://stackoverflow.com/q/7252457/1300995 – biegleux 2012-07-31 13:10:05

回答

7

阅读这些标志上的docsFLAG_AUTO_REQUERY已弃用,因为使用它游标查询通常在UI线程中执行。您应该尝试使用CursorLoader。 CursorLoader可以在后台线程中自动重新查询和传递数据。 FLAG_REGISTER_CONTENT_OBSERVER只是在光标上注册一个内容观察者,因此您可以接收有关新数据的通知。

+0

CursorLoader而不是SimpleCursorAdapter?我可以将CursorLoader绑定到ListView吗? – Vahan 2012-07-31 13:02:23

+2

您可以同时使用Loader和Adapter。只需在loader的回调中使用adapter.swapCursor() – atermenji 2012-07-31 13:18:45

+0

好的,我会试试,谢谢 – Vahan 2012-07-31 13:48:58