使用Section标题刷新列表视图

时间:2012-05-19 16:03:19

标签: android

我正在使用带有节标题的listview,如本例所示。

http://eshyu.wordpress.com/2010/08/15/cursoradapter-with-alphabet-indexed-section-headers/

问题是如果我删除或添加项目,这些部分都是错误的。这些部分似乎是在Adapter的构造函数中设置的,因此似乎无法在不创建新适配器的情况下刷新这些部分。有没有办法在不创建新适配器的情况下正确地重新创建节标题

由于

1 个答案:

答案 0 :(得分:1)

您不必创建新的适配器来更新ListView的内容。只需将您的适配器存储在一个字段中,并使用以下代码更新您的列表:

mAdapter.setList(yourNewList);
mAdapter.notifyDataSetChanged();

为了澄清这一点,您的活动应该是这样的:

private YourAdapter mAdapter;

protected void onCreate(...) {

    ...

    mAdapter = new YourAdapter(this);
    setListAdapter(mAdapter);

    updateData();
}

private void updateData() {
    List<Data> newData = getYourNewData();
    mAdapter.setList(yourNewList);
    mAdapter.notifyDataSetChanged();
}