android中使用CursorLoader代替startManagingCursor,数据库访问

发布于 2024-12-09 06:50:10 字数 432 浏览 0 评论 0原文

我是 Android 开发新手,对新的 API 有点困惑,我似乎找不到教程来提供帮助。

我有一个带有 SQLOpenHelper 的数据库和一个数据库适配器,我在许多示例中都看到过它们,例如 这个。我想将数据连接到一个列表中,因此创建了一个 ListFragment。我看到的教程在 Activity 中使用 startManagingCursor(c) 方法,但是文档说该方法已被弃用并使用 CursorLoader。

要使用 CursorLoader,看起来我需要一个 uri,这意味着我需要一个内容提供程序。我的应用程序不需要内容提供程序,因此我不确定如何实现此功能或正确/推荐的方法是什么。

朝正确的方向推进会很棒!

I'm new to android development and I've got a little stuck with the new API, I can't seem to find a tutorial to help.

I've got a database with a SQLOpenHelper and a Database adapter that I've seen used in many examples, such as this. I want to hook up the data into a list, so have created a ListFragment. The tutorials that I've seen use the startManagingCursor(c) method in Activity, however the documentation says that this is depreciated and to use CursorLoader.

To use the CursorLoader it looks like I need a uri, which implies I need a content provider. I don't need a content provider for my app, so I'm not sure how to implement this or what is the correct/ recommended way.

A shove in the right direction would be great!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

遥远的她 2024-12-16 06:50:10

我需要在此处添加一些要点

Some points that I need to add here

后来的我们 2024-12-16 06:50:10

根据我的阅读和理解,Android 团队鼓励使用位于数据库前面的 ContentProvider。正如您在 CursorLoader 中看到的,Android API 也鼓励这种使用模式。

抛开讨论这是否是小型应用程序的最佳方法,我认为您不应该与 API 作斗争而选择 ContentProvider。 CursorLoader 为您处理很多事情,我发现它工作得非常好。

From what I've read and understood, the Android team encourages the use of a ContentProvider that sits in front of your database. As you can see with CursorLoader, the Android API is also encouraging this usage pattern.

Letting aside discussions if this is the best approach for small apps, I think you should not fight the API and go with a ContentProvider. CursorLoader handles a lot of stuff for you and I find it works really well.

话少情深 2024-12-16 06:50:10

是的,使用 ContentProvider,这是 Google 团队鼓励这样做的。记住数据库书中的三层:存储、逻辑、应用。内容提供者充当逻辑。

Yes, use ContentProvider, that's Google teams encounge to do. Remember the three layers in database book:storage, logic,application. Contentprovider act as the logic.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文