java - 使用 startManagingCursor() 的优缺点是什么

标签 java android

此刻我控制我的光标如下所示。我想知道使用 startManagingCursor() 有什么好处。就目前而言,我有很多游标,每个人都知道,然后遇到与它们有关的错误。如果不是更好的做法,这是否有益。

Cursor c = db.rawQuery("GENERIC QUERY" , null);
c.moveToFirst();
numval = c.getInt(c.getColumnIndex("_id"));                   
c.close();

最佳答案

首先 startManagingCursor 是废弃的 API http://developer.android.com/reference/android/app/Activity.html#startManagingCursor(android.database.Cursor )

现在我们必须将 CursorLoader 类与 LoaderManager 一起使用。为了回答您的问题,如果 Activity 正在管理光标,那么它可以在屏幕方向发生类似情况时进行优化。 Activity 通过自己的生命周期来处理游标的生命周期。以下是 android 文档的 fragment 。

此方法允许 Activity 根据 Activity 的生命周期为您管理给定 Cursor 的生命周期。也就是说,当 Activity 停止时,它会自动调用给定 Cursor 上的 deactivate(),当它稍后重新启动时,它会为您调用 requery()。当 Activity 被销毁时,所有托管的 Cursor 将自动关闭

关于java - 使用 startManagingCursor() 的优缺点是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8206790/

相关文章:

java - Android资源类内存使用

Android:如何根据屏幕设置标题的高度或宽度

java - 什么可能导致Java返回后继续运行

java - 如何强制子类作为参数(或不允许父类作为参数)

java - 哈希表替代方案以获得更好的性能

android studio on linux : Gradle build is too slow. 持续1个多小时

android - Xamarin 安卓 : center not working for textview

java - 按自然顺序比较字符串但忽略字符串的前缀

java - 为什么写 "t"语法名时 'Hashtable'字母写小了?

android - 如何在gradle中并行生成productFlavors