«

Universal ImageLoader 在ListView刷新时会闪动

时间:2024-3-2 19:36     作者:韩俊     分类: Android


com.nostra13.universalimageloader.core.ImageLoader

用ImageLoader加载图片的时候,会调用

public void displayImage(String uri, ImageView imageView, DisplayImageOptions options)

用到一个options参数,用来规定加载前、中、失败后的默认显示图片和其他配置。

在一个频繁刷新的ListView中使用ImageLoader后,在某些手机上会发现图片闪动。经过分析,原来是DisplayImageOptions的问题。

之前的DisplayImageOptions是这样写的:

imageOptions = new DisplayImageOptions.Builder().bitmapConfig(Bitmap.Config.RGB_565).showStubImage(R.drawable.icon_default)
                    .showImageForEmptyUri(R.drawable.icon_default).showImageOnFail(R.drawable.icon_default).cacheInMemory(true)
                    .cacheOnDisc(true).build();

其中的showStubImage()造成了加载前先显示默认图片的问题,造成了闪动。修改为以下代码后就正常了:


imageOptions = new DisplayImageOptions.Builder().bitmapConfig(Bitmap.Config.RGB_565)
                    .showImageForEmptyUri(R.drawable.icon_default).showImageOnFail(R.drawable.icon_default).cacheInMemory(true)
                    .cacheOnDisc(true).build();



版权声明:本文为博主原创文章,未经博主允许不得转载。

标签: android

热门推荐