Android-Universal-Image-Loader-master这个图片加载的开源框架,我想做android的都不会太陌生。比如说,在我的项目中,下拉刷新的时候。getView被执行多次的时候,加载的图片会出现闪烁的问题,该如何解决呢!其实,我们只需要在getView()里面进行判断一次,是否进行了重复加载,即可解决这个问题,下面来看解决方案:
if (venueHeadImage.getTag() == null
|| !venueHeadImage
.getTag()
.toString()
.equals(venueBookingList.get(position)
.getLogoImageUrl())) {
ImageLoader.getInstance().displayImage(
venueBookingList.get(position).getLogoImageUrl(),
venueHeadImage, mDisplayImageOptions,
new ImageLoadingListener() {
@Override
public void onLoadingStarted(String imageUri, View view) {
// TODO Auto-generated method stub
}
@Override
public void onLoadingFailed(String imageUri, View view,
FailReason failReason) {
// TODO Auto-generated method stub
}
@Override
public void onLoadingComplete(String imageUri,
View view, Bitmap loadedImage) {
view.setTag(imageUri);
}
@Override
public void onLoadingCancelled(String imageUri,
View view) {
// TODO Auto-generated method stub
}
});
}
上面代码的主要意思是:我们给显示图片的控件设置一个Tag,判断这个Tag是否被加载过了。如果被加载过了,则不重复进行加载。这样下拉刷新时候出现问题就不会出现了...