ImageLoader使用

Posted glj521

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ImageLoader使用相关的知识,希望对你有一定的参考价值。

/**
* 配置ImageLoader框架
*/
public void setImageLoader() {

ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(
getApplicationContext()).memoryCacheExtraOptions(480, 800)
// default = device screen dimensions 内存缓存文件的最大长宽
.diskCacheExtraOptions(480, 800, null)
// 本地缓存的详细信息(缓存的最大长宽),最好不要设置这个
.threadPoolSize(3)
// default 线程池内加载的数量
.threadPriority(Thread.NORM_PRIORITY - 2)
// default 设置当前线程的优先级
.tasksProcessingOrder(QueueProcessingType.FIFO)
// default
.denyCacheImageMultipleSizesInMemory()
.memoryCache(new LruMemoryCache(2 * 1024 * 1024)) // 可以通过自己的内存缓存实现
.memoryCacheSize(2 * 1024 * 1024) // 内存缓存的最大值
.memoryCacheSizePercentage(13) // default
// .diskCache(new UnlimitedDiscCache(cacheDir)) // default
// 可以自定义缓存路径
.diskCacheSize(50 * 1024 * 1024) // 50 Mb sd卡(本地)缓存的最大值
.diskCacheFileCount(100) // 可以缓存的文件数量
// default为使用HASHCODE对UIL进行加密命名, 还可以用MD5(new
// Md5FileNameGenerator())加密
.diskCacheFileNameGenerator(new HashCodeFileNameGenerator())
// .imageDownloader(new BaseImageDownloader(context)) // default
.defaultDisplayImageOptions(DisplayImageOptions.createSimple()) // default
// .discCache(new LimitedAgeDiscCache(cacheDir, 7 * 24 * 60 *
// 60))// 自定义缓存路径,7天后自动清除缓存
.writeDebugLogs() // 打印debug log
.build(); // 开始构建
// 初始化ImagerLoader
ImageLoader.getInstance().init(config);

}




public static DisplayImageOptions getDisplayImageOptions() {
DisplayImageOptions options = new DisplayImageOptions.Builder()
.cacheInMemory(true) // default
.cacheOnDisk(true) // default
.considerExifParams(false) // default
.imageScaleType(ImageScaleType.IN_SAMPLE_POWER_OF_2) // default
.bitmapConfig(Bitmap.Config.RGB_565) // default
.build();
return options;
}

 

 

以上是关于ImageLoader使用的主要内容,如果未能解决你的问题,请参考以下文章

62. ImageLoader源代码-流程分析

使用ImageLoader设置圆角时无效或者干脆图片不显示

64.ImageLoader源代码分析-磁盘命名和图片缓存算法

无法通过 imageloader 类在列表视图中显示图像

Android imageloader imageLoader.displayImage显图片间长了内存缓慢上升导致溢出

ImageLoader使用