【发布时间】:2012-09-12 07:22:43
【问题描述】:
早安,
我在 Android 中制作了我的测试应用程序,并发现了一些困难的时刻要自己完成。
我有两个选项卡片段和主机活动(创建两个选项卡片段)和操作栏(actionbarsherlock)。一个 Fragment 允许添加一些关于产品的信息并将其持久化到 SQLite 中。其他片段有一个列表视图,显示数据库中的所有产品。
问题在于,在第一个选项卡中,我将数据保存在不同的线程中,延迟时间为 5 秒,因此您单击“将产品添加到数据库”按钮,5 秒后它将被添加。但是点击后我可以切换到另一个带有 listview 的选项卡,情况如下:第一个片段中的数据由于延迟而尚未持久化,但在持久化后,listview 没有任何变化 - listview 不知道变化。当它注意到数据库中有更改时,我需要自动更新列表视图。我怎样才能做到这一点?我使用 ArrayAdapter 将数据填充到列表视图中。
【问题讨论】:
-
所以写
ContentProvider而不是ArrayAdapter使用CursorAdapter... 来填充CursorProvider如果你构建正确的CursorLoader使用CursorLoaderContentProvider刷新ListView在实现CursorAdapter已经...
标签: android multithreading listview tabs