基础数据更改时刷新视图显示

时间:2010-11-27 19:41:08

标签: android

我已经看过几次回答这个问题,建议使用BaseAdapter中的方法notifyDataSetChanged()。

当您的应用程序不使用任何适配器时,有没有办法刷新?我有一个简单的应用程序,我使用一些带有首选项的活动,以及带有文本视图和按钮的相对布局。目前我不使用任何适配器,如SimpleAdapter或ArrayAdapter或CursorAdapter。在我的情况下,似乎我必须创建其中一个才能使用notifyDataSetChanged()?对我来说没有更简单的方法吗?

3 个答案:

答案 0 :(得分:2)

看起来(我可能会弄错,但看起来确实如此)你没有发现这些课程的目的 - SimpleAdapterArrayAdapterCursorAdapter。他们应该在ListView内部使用Activity(或者更好 - 在ListActivity内)。如果你不使用ListView那么这些adapers很可能对你无用。

我假设您以某种方式(SharedPreferences或文件)保留了数据。因此,如果您启动任何活动,那么它只会读取数据以填充视图。在这种情况下,不需要额外的东西。如果您需要为当前可见的Activity重新加载数据,那么只需重新读取持久存储中的数据并重新填充视图。

答案 1 :(得分:0)

如果您的数据正在发生变化而您需要刷新视图,那么数据实际上是如何变化的?它是在一个单独的线程中,或者,您是否只是想要定期发生某些事情(轮询RSS源或其他东西)?

答案 2 :(得分:0)

我有类似的问题。我有一个广播组,每个单选按钮都有一个标签。当屏幕旋转时,我使用了一个不同的布局与一个无线电组&具有相同ID的单选按钮。我在onCreate()中调用了setContentView():旋转后,“旧”标签将显示在新布局上(奇异)。当我将setContentView()移动到onResume时,一切似乎都更新了。感谢Arhimed的回答。