android - 关于ListView 快速滑动,图片显示错位的问题。

浏览:28日期:2022-12-12

问题描述

android - 关于ListView 快速滑动,图片显示错位的问题。

Listview展示数据,如果后台返回的数据中包含有文件,则在item的里加载一个本地图片,如果没有文件,则不显示图片。但是在快速的滑动过程中,会出现图片错位的问题。 就是不包含文件的item的前面也会显示一个本地图片。请问这个该如何处理? 已使用convertView.setTag(viewHolder) 和 viewHolder = (ViewHolder) convertView.getTag() 。android - 关于ListView 快速滑动,图片显示错位的问题。

问题解答

回答1:

ListView里异步加载图片时可能会出现这个问题。可以看看这篇博客:http://www.trinea.cn/android/android-listview-display-error-image-when-scroll/

你要补全if (list... != 0)的判断,在else里把ImageView的图片还原置空。因为viewHoder里取出来的可能是重复利用的imageView,而刚好这个imageView恰好是你上次设置过图片的。

注意:在使用ViewHolder的时候要千万注意重置View的状态,因为获取到的View很可能是上一个状态和你当前所需要的状态不符合。

回答2:

Android 的官方网站上有关于这个的讲解,你可以去看看。你的图片不是用从网络获取的,正常使用不应该出现混乱,在getView里面初始化每个条目。

回答3:

android - 关于ListView 快速滑动,图片显示错位的问题。把else补上,设为空图片就行了,你不处理,系统默认重用之前的布局东西。

相关文章: