ListView的Adapter中,getView方法得position连续多次传入0
2013-06-06 10:34
393 查看
今天做项目遇到一个问题,ListView适配的时候多出了两条数据。
检查后发现集合中没问题,
debug之后发现getView被调用了多次,依次传入的position为0001234,前两个0是怎么回事?
查了一下,前两个0是 绘制item高度时系统并不知道item应该绘制多高,它会先取一条来试探以确定item绘制的具体高度,这样就导致多调用了getView方法。
如上图,周四的1和周五的1都是不应该存在的。
今天做项目遇到一个问题,ListView适配的时候多出了两条数据。
检查后发现集合中没问题,
debug之后发现getView被调用了多次,依次传入的position为0001234,前两个0是怎么回事?
查了一下,前两个0是 绘制item高度时系统并不知道item应该绘制多高,它会先取一条来试探以确定item绘制的具体高度,这样就导致多调用了getView方法。
如上图,周四的1和周五的1都是不应该存在的。
检查后发现集合中没问题,
debug之后发现getView被调用了多次,依次传入的position为0001234,前两个0是怎么回事?
查了一下,前两个0是 绘制item高度时系统并不知道item应该绘制多高,它会先取一条来试探以确定item绘制的具体高度,这样就导致多调用了getView方法。
if (parent.getChildCount() == position){
//里面就是正常的position
}
else {
//临时的position=0 }
如上图,周四的1和周五的1都是不应该存在的。
今天做项目遇到一个问题,ListView适配的时候多出了两条数据。
检查后发现集合中没问题,
debug之后发现getView被调用了多次,依次传入的position为0001234,前两个0是怎么回事?
查了一下,前两个0是 绘制item高度时系统并不知道item应该绘制多高,它会先取一条来试探以确定item绘制的具体高度,这样就导致多调用了getView方法。
if (parent.getChildCount() == position){
//里面就是正常的position
}
else {
//临时的position=0 }
如上图,周四的1和周五的1都是不应该存在的。
相关文章推荐
- 关于重写的listview adapter中,在getView()方法中,打印语句时,相同的position打印了多次,重复调用问题
- android中ListView或GridView出现在adapter中的getView出现多次position为0的情况
- 解决adapter.getView()方法多次被调用,导致listView卡顿的原因。
- ListView连续调用getView方法的分析与解决
- 自定义Adapter,通过复写getView方法,实现ListView中item背景颜色变化
- android-继承BaseAdapter--自定义适配器,getView执行多次的解决方法
- 解决ListView,Gallery的Adapter中由于布局问题导致的getView多次调用问题
- ListView,GridView,Gallery的Adapter中的getView多次调
- ListView的adapter中getView方法一直调用
- android中ListView多次刷新重复执行getView的解决方法
- android中ListView多次刷新重复执行getView的解决方法
- Android 重写lisview的adapter的getView方法,position一直是0
- Android: Gallery的adapter中getView方法被执行多次
- Android ListView getView()方法重复调用导致position错位
- android listview继承BaseAdapter,自定义的适配器,getView方法执行多组循环解决方式
- Android 重写lisview的adapter的getView方法,position一直是0
- android: BaseAdapter的getview方法会多次重复调用
- ListView和GridView 自定义Adapter的getView()方法调用问题
- android-继承BaseAdapter--自定义适配器,getView执行多次的解决方法
- ListView的adapter中getView被多次调用的问题