当前位置: 代码迷 >> Android >> adapter.notifyDataSetChange()的功用,什么时候用
  详细解决方案

adapter.notifyDataSetChange()的功用,什么时候用

热度:48   发布时间:2016-04-28 03:39:26.0
adapter.notifyDataSetChange()的作用,什么时候用
public class MainActivity extends Activity {
List<CollectListModel> mcList;
private MyCollectAdapter adapter;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ListViewCollect mListview = (ListViewCollect) findViewById(R.id.list_del);
mcList = new ArrayList<CollectListModel>();
adapter = new MyCollectAdapter(this, mcList);
mListview.setAdapter(adapter);
setList();
}

public void setList() {
for (int i = 0; i < 10; i++) {
CollectListModel m = new CollectListModel();
mcList.add(m);
}
adapter.notifyDataSetChanged();
}

}

------解决思路----------------------
主要是更新ListView的

------解决思路----------------------
数据源发生改变的时候。刷新Listview.比如上拉下拉更新加载更多。
------解决思路----------------------
你改变了list里面的数据的时候就可以用于刷新
------解决思路----------------------
数据源改变时,通知作用
------解决思路----------------------
看下微信(自动更新,加一条)
看下搜狐新闻(下拉后更新)
如果用的是listview,该是notify用的时候。
------解决思路----------------------
当数据更新的时候,可以调用该方法,刷新界面。
如果数据更新了,但是不调用该方法,有些手机上,可能会崩溃。
------解决思路----------------------
更改了传入Adapter的List集合的时候调用,可以刷新
------解决思路----------------------
每次list里面的数据改变时 就要通过notifyDataSetChanged()刷新 你才能看到你的数据变化