关闭getContentResolver游标

时间:2018-11-03 20:56:17

标签: android

我通过在Cursor方法中调用getContentResolver来填充onCreate

Cursor cursor = getContentResolver().query(CONTENT_URI, null, null, null, "oid, name, flag");

创建Cursor的实例时使用SimpleCursorAdapter

关于查询关键字(在上面的代码行中),我收到以下警告:

  

与#close一起使用后应释放光标

在实例化Cursor类之后,我尝试在onCreate方法的最后关闭此SimpleCursorAdapter,但这会使应用程序崩溃。

我应该在何时何地关闭Cursor

谢谢。 J

1 个答案:

答案 0 :(得分:1)

因为您正在为CursorAdapter使用Cursor,所以在调用setAdapter()之后关闭它会阻止适配器访问数据。因此,您可能需要找到另一个关闭它的地方,例如在活动拆除生命周期的阶段,例如onPause()onStop()onDestory()。 (我的建议是在onStop()中关闭游标,因为它一定会被调用)。