码迷,mamicode.com
首页 > 其他好文 > 详细

ListVIew中的数据发生改变时,数据不显示的问题

时间:2016-08-29 19:30:21      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:

  在进行listview的数据添加的时候,改变数据源后使用notifyDataSetChanged()方法刷新数据源的时候,发现界面根本不显示数据,一脸懵逼。

  最后把问题放了一周后,找到了解决办法,原因是我把数据源改变的时候是直接赋值的,看网上的说法是改变了数据源的引用,而你给listview添加数据的时候,其实是给的一个句柄,而你给数据源直接赋值的时候是改变了句柄的,导致两处的句柄不同,而notifyDataSetChanged()方法其实是监控的前一个句柄的变化,所以导致notifyDataSetChanged()就不能刷新数据了。

 

  有问题的写法:myModel = model;

  正确的写法:myModel.clear();

        myModel.addAll(model);

  

  不知道你们看懂没有,不管懂没懂,反正这么写就对了

ListVIew中的数据发生改变时,数据不显示的问题

标签:

原文地址:http://www.cnblogs.com/grein/p/5819066.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!