2 wobushipanda wobushipanda 于 2014.07.07 11:57 提问

Android Listview adapter数据更新

listview绑定适配器后,数据更新不是需要调用notifyDataSetChanged刷新数据吗,为什么我现在不用掉也能刷新,平台是4.2和4.4,低的平台没测。代码如下

    adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1);
    listview = (ListView)findViewById(R.id.listview);
    listview.setAdapter(adapter);
    btn = (Button)findViewById(R.id.button);
    btn.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View arg0) {
            adapter.add("item");
        }
    });

1个回答

davidleen29
davidleen29   Rxr 2014.07.07 15:08

/**
* Adds the specified object at the end of the array.
*
* @param object The object to add at the end of the array.
*/
public void add(T object) {
synchronized (mLock) {
if (mOriginalValues != null) {
mOriginalValues.add(object);
} else {
mObjects.add(object);
}
}
if (mNotifyOnChange) notifyDataSetChanged();
}

这个是源代码 最后已经帮你调用notify了。 建议有问题先自己分析。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!