弃用 startManagingCursor 的原因是什么?
我的简单应用有一个表格 View ,其中包含来自数据库的数据列表。所以,我现在在 onCreate 中有什么:
final Cursor cursor = getDataFromDB();
startManagingCursor(cursor);
setListAdapter(new CursorAdapter(cursor));
就是这样,我不需要做任何其他事情......
但是 startManagingCursor 现在已被弃用,我应该实现 LoaderCallbacks ,覆盖 onCreateLoader、onLoadFinished、onLoaderReset、为我的数据库创建 ContentProvider 等等。但我不需要所有这些员工,我只需要从数据库中获取几行信息。怎样成为 ?为什么安卓这样做?我为什么要实现所有这些人员?
Best Answer-推荐答案 strong>
话虽如此,Android 中的“已弃用”通常意味着“我们将继续支持此功能,但我们认为有更好的解决方案”。
如果你愿意继承 FragmentActivity,你可以使用 Android Support 包中的 Loader 框架实现,一直追溯到 Android 1.6。
您当然可以在 API 级别 11+ 上使用 startManagingCursor()。但是,托管游标的问题(特别是在主应用程序线程上的 Activity 重新启动时 requery())仍然存在,无论是较旧的还是较新的 Android 版本。
来源:Android eclipse startManagingCursor Deprecated but want to support older API versions?
关于Android:弃用 startManagingCursor 的原因是什么?,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/11099942/
|