ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(
getApplicationContext()).memoryCacheExtraOptions(480, 800)
// max width, max height£¬¼´±£´æµÄÿ¸ö»º´æÎļþµÄ×î´ó³¤¿í
.threadPoolSize(3)
// Ï̳߳ØÄÚ¼ÓÔصÄÊýÁ¿
.threadPriority(Thread.NORM_PRIORITY - 2)
.denyCacheImageMultipleSizesInMemory()
.memoryCache(new UsingFreqLimitedMemoryCache(2 * 1024 * 1024))
// 缓存一般会用总总内存德1/8
// You can pass your own memory cache
// implementation/Äã¿ÉÒÔͨ¹ý×Ô¼ºµÄÄڴ滺´æʵÏÖ
.memoryCacheSize(2 * 1024 * 1024)
.discCacheSize(50 * 1024 * 1024)
.discCacheFileNameGenerator(new Md5FileNameGenerator())
// ½«±£´æµÄʱºòµÄURIÃû³ÆÓÃMD5 ¼ÓÃÜ
.tasksProcessingOrder(QueueProcessingType.LIFO)
.discCacheFileCount(100) // »º´æµÄÎļþÊýÁ¿
.defaultDisplayImageOptions(DisplayImageOptions.createSimple())
.imageDownloader(
new BaseImageDownloader(getApplicationContext(),
5 * 1000, 30 * 1000)) // connectTimeout (5 s),
// readTimeout (30
// s)³¬Ê±Ê±¼ä
.writeDebugLogs() // Remove for release app
.build();
ImageLoader.getInstance().init(config);// È«¾Ö
public static DisplayImageOptions options() {
DisplayImageOptions options = new DisplayImageOptions.Builder()
.showImageOnLoading(R.drawable.big_loadpic_empty_listpage) // 设置图片在下载期间显示的图片
.showImageForEmptyUri(R.drawable.big_loadpic_empty_listpage)// 设置图片Uri为空或是错误的时候显示的图片
.showImageOnFail(R.drawable.big_loadpic_empty_listpage) // 设置图片加载/解码过程中错误时候显示的图片
.cacheInMemory(true)// 设置下载的图片是否缓存在内存中
.cacheOnDisc(true)// 设置下载的图片是否缓存在SD卡中
.considerExifParams(true) // 是否考虑JPEG图像EXIF参数(旋转,翻转)
.imageScaleType(ImageScaleType.EXACTLY_STRETCHED)// 设置图片以如何的编码方式显示
.resetViewBeforeLoading(true)// 设置图片在下载前是否重置,复位
.displayer(new RoundedBitmapDisplayer(0))// 是否设置为圆角,弧度为多少
.build();//
return options;