android - 如何在 fragment 中使用startmanagingcursor?

标签 android sqlite android-fragments

如何在 fragment 中使用 startmanagingcursor?因为我需要从 Fragment 中的 SQLite 中提取数据,但我不能在其中使用 startmanagingcursor。

这是我的代码

 @Override  
 public void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);
        dbUtil.open();
        Cursor cursor = dbUtil.fetchNews(getArguments().getString("title"));
        getActivity().startManagingCursor(cursor);
        newsTitle = cursor.getString(0);
        dbUtil.close();
 }

最佳答案

既然其他人似乎都想对你说教而不给你答案,我实际上会回答你的问题(然后说教:p)。

getActivity().startManagingCursor(yourCursor);

就这么简单。

正如其他人所指出的,它已被弃用,并且出于多种原因推荐使用 CursorLoader ......让数据处理远离 UI 线程是主要线程。

但如果您真的需要/想要在 fragment 中使用 startManagingCursor,上面的 fragment 就是您的做法。

鉴于您发布的更多信息,另一个问题可能是您尝试从何处调用数据库。您不应该在 fragment 类中使用 onCreate 方法(至少对于这些操作),您应该使用 onActivityCreated。这样您就可以确定控制您的 fragment 的 Activity 在您尝试使用任何与之关联的内容之前已经完成了自身设置。

关于android - 如何在 fragment 中使用startmanagingcursor?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12739785/

相关文章:

android - 主屏幕上单击事件的应用程序图标

c# - SQLite 中的 NHibernate 和 Utc 日期时间

android - 在不调用弹出 fragment 的 onCreateView 的情况下清除 fragment 堆栈

android - ListFragment 的上下文菜单

android - 使用 GraphView 库 android 从 Json 数据绘制图形

android - 使用 Android 插件的 Eclipse 中的错误消息

java - 如何从 Arraylist 获取字符串?

java - 想要使用 GoogleMaps - OnMyLocationChangeListener 但无法实现?任何其他选项

android - CoordinatorLayout 中 BottomNavigationView 覆盖的 Recyclerview

python - web2py 计划任务重新创建(重置)数据库