0

我正在创建一个应用程序(使用 SQLite),用户可以在其中选择他们家中的食材。当他们选择成分时,我想更新一个 ActionTab 以显示用户可以根据他们拥有的成分制作的正确食谱数。ActionTab 本身包含一个片段,该片段是匹配配方的列表 (CursorAdapter)。

从我遇到的所有事情来看,似乎我可能需要创建一个 ContentProvider 来执行此操作。但是,阅读Android ContentProvider 文档的“决定是否需要内容提供程序”部分,我看到以下内容:

如果使用完全在您自己的应用程序中,则不需要提供程序来使用 SQLite 数据库。

这似乎与我基于野外可用的其他文章的想法相矛盾。所以我的问题是,我真的需要创建一个 ContentProvider 来实时更新这些数据吗?或者,还有更好的方法?(以防万一,我正在与 OrmLite 合作。)

4

1 回答 1

0

对于遇到此问题的其他任何人,您不需要创建 ContentProvider。只需在需要实时更新的光标上指定自定义通知 URI:

cursor.setNotificationUri(getContentResolver(), uri)

然后,每当您的应用中发生应触发实时更新的相关更改时,请使用相同的 URI 值调用以下命令:

getContentResolver().notifyChange(uri, null)

希望这可以帮助任何有同样问题的人!

于 2013-05-29T01:06:10.777 回答