【问题标题】:Refresh listview with Section headers使用部分标题刷新列表视图
【发布时间】:2012-05-19 16:03:19
【问题描述】:

我正在使用带有节标题的列表视图,如本例所示。

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

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

谢谢

【问题讨论】:

    标签: android


    【解决方案1】:

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

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

    为了澄清这一点,您的 Activity 应如下所示:

    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();
    }
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-23
    • 1970-01-01
    • 2012-03-02
    • 1970-01-01
    • 2012-08-22
    • 2014-12-08
    相关资源
    最近更新 更多