universalimageloader是用于加载图片的一个开源项目,universalimageloader是实现异步加载大量图片的源码和例子,包括缓存、硬盘缓存、容错机制等技术。在其项目介绍中是这么写的,
支持多线程图片加载;
提供丰富的细节配置,比如线程池大小,htpp请求项,内存和磁盘缓存,图片显示时的参数配置等等;
提供双缓存;
支持加载过程的监听;
提供图片的个性化显示配置接口;
widget支持;
要使用imageloader就要到这里下载jar包:
然后导入项目中去就行了。
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使用(一):
图片加载框架--imageloader实现(二):
开源项目之universalimageloader(异步加载大量图片):
android开源框架imageloader的完美例子:
代码下载链接: