来自其他活动的Android刷新listview适配器

时间:2012-02-24 08:56:22

标签: android listview adapter

我搜索了很多,但找不到合适的答案。

我有两个活动。每项活动都有一个列表视图

每个listviews都有一个自定义 ArrayAdapter 。所以:

活动1 ----> Listview 1 ------>自定义ArrayAdapter 1

活动2 ----> Listview 2 ------>自定义ArrayAdapter 2

当我按下活动1 中的按钮时,它会刷新 Listview 1 (它的适配器)。

目标是:我必须在Listview 2上进行刷新。我怎样才能做到这一点?我读过有关广播的内容,但对此并不了解。

谢谢!

2 个答案:

答案 0 :(得分:12)

如果你在 Activity1 ,尝试刷新 Activity2 的listview是没用的,因为它不可见。但是,您可以做的是,当用户切换到 Activity2 时,只需在其中 onResume()方法和 Activity2中调用适配器的notifyDataSetChanged() 将会刷新。

答案 1 :(得分:1)

在每个活动中将listView添加为全局变量,并将其设为公共静态。

然后,只需在需要时调用它。

e.g。在activity1中,调用以下内容使activity2中的列表刷新

if(SecondActivity.listView != null)

    ((ArrayAdapter)SecondActivity.listView.getAdapter()).notifyDataSetInvalidated();