全面解析Android的开源图片框架Universal-Image-Loader

2019-12-10 18:34:04丽君

Android,开源图片框架,Universal-Image-LoaderAndroid,开源图片框架,Universal-Image-Loader

这个方法使用起来比较方便,而且使用displayImage()方法 他会根据控件的大小和imageScaleType来自动裁剪图片,我们修改下MyApplication,开启Log打印

public class MyApplication extends Application { 
 
 @Override 
 public void onCreate() { 
  super.onCreate(); 
 
  //创建默认的ImageLoader配置参数 
  ImageLoaderConfiguration configuration = new ImageLoaderConfiguration.Builder(this) 
  .writeDebugLogs() //打印log信息 
  .build(); 
   
   
  //Initialize ImageLoader with configuration. 
  ImageLoader.getInstance().init(configuration); 
 } 
 
} 

我们来看下图片加载的Log信息

Android,开源图片框架,Universal-Image-Loader

第一条信息中,告诉我们开始加载图片,打印出图片的url以及图片的最大宽度和高度,图片的宽高默认是设备的宽高,当然如果我们很清楚图片的大小,我们也可以去设置这个大小,在ImageLoaderConfiguration的选项中memoryCacheExtraOptions(int maxImageWidthForMemoryCache, int maxImageHeightForMemoryCache)
第二条信息显示我们加载的图片来源于网络
第三条信息显示图片的原始大小为1024 x 682 经过裁剪变成了512 x 341 
第四条显示图片加入到了内存缓存中,我这里没有加入到sd卡中,所以没有加入文件缓存的Log

我们在加载网络图片的时候,经常有需要显示图片下载进度的需求,Universal-Image-Loader当然也提供这样的功能,只需要在displayImage()方法中传入ImageLoadingProgressListener接口就行了,代码如下