标签:
在进行listview的数据添加的时候,改变数据源后使用notifyDataSetChanged()方法刷新数据源的时候,发现界面根本不显示数据,一脸懵逼。
最后把问题放了一周后,找到了解决办法,原因是我把数据源改变的时候是直接赋值的,看网上的说法是改变了数据源的引用,而你给listview添加数据的时候,其实是给的一个句柄,而你给数据源直接赋值的时候是改变了句柄的,导致两处的句柄不同,而notifyDataSetChanged()方法其实是监控的前一个句柄的变化,所以导致notifyDataSetChanged()就不能刷新数据了。
有问题的写法:myModel = model;
正确的写法:myModel.clear();
myModel.addAll(model);
不知道你们看懂没有,不管懂没懂,反正这么写就对了
标签:
原文地址:http://www.cnblogs.com/grein/p/5819066.html