UIL是一款强大的、可高度定制的图片加载库,简单来说,UIL就做了一件事情:加载图片并显示在相应的ImageView上
功能:
多线程图片加载(同步、异步)
自由定制加载配置项(线程池、下载器、解码器、内存缓存、磁盘缓存、图片显示样式)
可加载的图片类型:
一. "http://site.com/image.png" // 网络加载
二. "file:///mnt/sdcard/image.png" // 加载 SD 卡图片文件
三. "file:///mnt/sdcard/video.mp4"
// 加载 SD卡中的视频预览图 四."content://media/external/images/media/
// 加载 content provider 的图片
五."content://media/external/video/media/"
// content provider 里的图片预览图
六. "assets://image.png"
// 加载 assets 里的图片资源
七."drawable://" + R.drawable.img // 加载本地 drawables 资源(非.9 图片)
1.基本使用
在清单文件中添加权限,访问网络、读写SD卡权限,添加依赖
在Application或Activity中初始化ImageLoader,一般建议在Application里初始化
//初始化ImageLoader对象
ImageLoader imageLoader = ImageLoader.getInstance();
//初始化ImageLoader的配置参数信息,包括图片最大尺寸、线程池、缓存、下载器、解码器等等
ImageLoaderConfiguration config = ImageLoaderConfiguration.createDefault(context);
//初始化ImageLoder
imageLoader.displayImage();
//显示图片
imageLoader.displayImage(imageUri.imageView);
//下载图片,解析成Bitmap传递给回调接口
imageLoader.loadImage(imageUri,new SimpleImageLoadingListener(){
@Overried
public void onLoadingComplete(String imageuri,View view,Bitmap loadedImage){
//处理图片
}
});
图片显示的样式displayer:
.displayer(new CircleBitmapDisplayer(Color.WHITE,5))//样式-圆形
.displayer(new FadeInBitmapDisplayer(200))//样式-渐进
.displayer(new RoundedBitmapDisplayer(8))//样式-圆角
//图片形状
DisplayImageOptions options = new DisplayImageOptions.Builder().displayer(new CircleBitmapDisplayer()).build();
//显示图片用重载方法
imageLoader.displayImage("file:///sdcard/图片地址",iv,options);
要实现效果重叠,要实现图片加载监听