重写ListView的Adapter时,getView()方法没有执行的原因
2015-08-13 23:58
465 查看
1、 在做setAdapter()方法时,程序会首先执行getCount()方法,当getCount()方法返回 0 时,就不会去执行getView()方法,所以在重写的时候要注意getCount()方法的return数据。
2、在多线程编程中,当数据赋值和setAdapter()是在不同的线程中,可能 getCount() 的返回具体数据的 size() 值为 0 ,也就是说A线程中数据还没有赋值时,B线程中就已经做了setAdapter()操作,导致getView()方法没有被调用,此时的解决方案是在数据赋值结束之后调用 notifyDataSetChanged() 方法重新载入数据即可。
3、XML布局文件有问题,可能有小的错误点没有看到,请详细检查。
2、在多线程编程中,当数据赋值和setAdapter()是在不同的线程中,可能 getCount() 的返回具体数据的 size() 值为 0 ,也就是说A线程中数据还没有赋值时,B线程中就已经做了setAdapter()操作,导致getView()方法没有被调用,此时的解决方案是在数据赋值结束之后调用 notifyDataSetChanged() 方法重新载入数据即可。
3、XML布局文件有问题,可能有小的错误点没有看到,请详细检查。
相关文章推荐
- js基础3
- HDOJ2041 超级楼梯(dp & 打表)
- 入行必读:互联网行业薪酬等级!看看你值多少钱?
- HBase1.0.1.1 API与原来有所不同
- 如何使用Cocos2d-x 3.0制作基于tilemap的游戏:第三部分(完)
- i = i++为什么会是i原来的值??
- Objective-C中的方法重载与初始化方法
- JAVA编写的一个简单的Socket实现的HTTP响应服务器
- Unity 打印信息
- Unity5 AssetBundle管理
- 利用bulk insert指令来将csv文件导入SQL Server
- LeetCode241——Different Ways to Add Parentheses
- springMVC页面通过问号传值乱码问题解决
- gateway & data management
- 2.9 Model Selection and the Bias–Variance Tradeoff
- leetcode Contains Duplicate II python
- Android
- AVA编写的使用Socket模拟Http的GET操作
- leetcode Contains Duplicate python
- ubuntu install scrapy