对CursorLoaders感到困惑并将它们与自定义SQLiteOpenHelper一起使用

时间:2012-05-31 23:02:20

标签: android sqlite sqliteopenhelper android-loadermanager android-cursorloader

我正在编写一个应用程序,允许人们为他们需要做的各种任务设置警报。我目前的计划是将所有相关数据存储到SQLite数据库中。为此,我创建了一个扩展SQLiteOpenHelper的类,并使用方法填充它以处理我期望必须接受的所有CRUD。知道在一个线程上执行所有处理通常是个坏主意,查找了在线程之间分离工作的方法,并找到了CursorLoader和LoaderManager,这看起来很理想,因为它们在Android兼容性库中可用。但是,LoaderManager似乎需要tutorial in the documentation之前的ContentProvider,我还没有真正看到需要对ContentProviders做任何事情,因为我没有计划允许其他应用访问数据。没有ContentProvider,我不知道我应该如何为我的数据库提供一个Uri来提供给CursorLoader。有没有办法让我继续使用扩展SQLiteOpenHelper的类并仍然实现LoaderManager以允许我将所有填充的ListFragments与我的光标从UI线程中保留下来?

1 个答案:

答案 0 :(得分:4)

  

我有没有办法继续使用扩展SQLiteOpenHelper的类并仍然实现LoaderManager以允许我将所有填充的ListFragments与我的光标从UI线程中保留下来?

您只需要一个不同的Loader实现,一个不涉及ContentProvider的实现。恰好I wrote one of those发生了这种情况。