UniversalImageLoader是用于加载图片的一个开源项目,UniversalImageLoader是实现异步加载大量图片的源码和例子,包括缓存、硬盘缓存、容错机制等技术。在其项目介绍中是这么写的,
支持多线程图片加载;
提供丰富的细节配置,比如线程池大小,HTPP请求项,内存和磁盘缓存,图片显示时的参数配置等等;
提供双缓存;
支持加载过程的监听;
提供图片的个性化显示配置接口;
Widget支持;
要使用ImageLoader就要到这里下载jar包:
https://github.com/nostra13/Android-Universal-Image-Loader
然后导入项目中去就行了。
DisplayImageOptions options,图片的参数配置对象,
options = new DisplayImageOptions.Builder()
.showStubImage(R.drawable.stub_image)
.showImageForEmptyUri(R.drawable.image_for_empty_url)
.cacheInMemory()
.cacheOnDisc()
.build();
第一个是图片加载过程中显示的图片,第二个是图片加载失败时用的的图片,第三个允许内存缓存,第四个允许磁盘缓存。除此之外还有两个,imageScaleType(ImageScaleType imageScaleType)图片缩放类型,displayer(BitmapDisplayer displayer)bitmap显示控制层,可以在显示图片前对Bitmap简单处理一下,这两个不是一定要设定,应为他们都有默认值。
最后一个参数ImageLoadingListener listener当然是监听过程的回调接口。
通过ImageLoader实例对象,调用 public void displayImage(String uri, ImageView imageView, DisplayImageOptions options, ImageLoadingListener listener) 方法将开始加载图片。
工作线程: LoadAndDisplayImageTask displayImageTask = new LoadAndDisplayImageTask(configuration, imageLoadingInfo, new Handler());
详细的可以参考“参考资料链接”,这里不做详细的说明。
参考资料链接:
图片加载框架---UniversalImageLoader使用(一):http://www.cnblogs.com/avenwu/archive/2013/05/03/3058468.html
图片加载框架--ImageLoader实现(二):http://www.cnblogs.com/avenwu/archive/2013/05/05/3060931.html
开源项目之UniversalImageLoader(异步加载大量图片):http://blog.csdn.net/banketree/article/details/8004475
Android开源框架ImageLoader的完美例子:
http://blog.csdn.net/wwj_748/article/details/10079311
http://www.cnblogs.com/zgz345/p/3502315.html
代码下载链接:
http://www.apkbus.com/forum.php?mod=viewthread&tid=169081
http://download.csdn.net/detail/banketree/5328188