如何在活动上重新加载listview?

时间:2015-04-15 13:04:51

标签: android

我有2项活动。 在活动1中,我有一个来自数据库的listview显示数据和按钮Insert 活动2用于向数据库添加内容。 当我点击活动2中的按钮ADD时,我调用方法finish()并返回活动1。 那么,有人可以告诉我如何在活动1中重新加载listview吗?

3 个答案:

答案 0 :(得分:1)

重新创建适配器应该会有所帮助,因为你需要像Kaaaarll所说的那样获得一个新的数据集。

例如,您的代码中有类似的内容:

MyData data = database.getData();
MyAdapter adapter = new MyAdapter(data);
ListView list = new ListView();
list.setAdapter(adapter);

并在下一次运行中,在onResume()中,获取新数据并重新应用适配器:

MyData data = database.getData();
MyAdapter adapter = new MyAdapter(data);
list.setAdapter(adapter);

答案 1 :(得分:0)

您可以重新查询数据库以获取最新数据,然后重新填充listview的适配器。

答案 2 :(得分:0)

通知onResume()方法活动中的数据集1.它应该类似于listViewAdapter.notifyDataSetChanged();。不要忘记检查它们是否为null

让我知道它是否有效。

编辑:

这样的事情应该做(在活动1中):

@Override
protected void onResume() {
    super.onResume();
    if (listViewAdapter != null) {
        listViewAdapter.notifyDataSetChanged();
    }
}