ImageLoader双缓存机制加载图片
来源:互联网 发布:js 时间戳格式化函数 编辑:程序博客网 时间:2024/05/22 06:42
ImageLoaderConfiguration
为ImageLoader提供下载配置
1.获得此类的方式:
1 /** 2 * ImageLoaderConfiguration 创建的两种方式。 3 */ 4 // 创建默认的ImageLoaderConfiguration 5 ImageLoaderConfiguration configuration_0 = ImageLoaderConfiguration 6 .createDefault(this); 7 8 // 使用DisplayImageOptions.Builder()创建DisplayImageOptions 9 ImageLoaderConfiguration configuration_1 = new ImageLoaderConfiguration.Builder( 10 this).threadPriority(Thread.NORM_PRIORITY - 2) 11 .denyCacheImageMultipleSizesInMemory() 12 .discCacheFileNameGenerator(new Md5FileNameGenerator()) 13 .tasksProcessingOrder(QueueProcessingType.LIFO).enableLogging() 14 .build();
2.常量
1 /** 2 * 常量的设置 3 */ 4 //属性的设置 5 EFAULT_TASK_PROCESSING_TYPE 6 //线程池的大小 7 DEFAULT_THREAD_POOL_SIZE 8 //线程的优先级 9 DEFAULT_THREAD_PRIORITY
3.常用方法
1 /** 2 *当同一个Uri获取不同大小的图片,缓存到内存时,只缓存一个。默认会缓存多个不同的大小的相同图片 3 */ 4 denyCacheImageMultipleSizesInMemory()
1 /** 2 * 设置本地图片缓存 3 * @param discCache 4 */ 5 discCache(DiscCacheAware discCache) 6 discCache: 7 FileCountLimitedDiscCache(File cacheDir, int maxFileCount):设置缓存路径和缓存文件的数量,超过数量后,old将被删除 8 FileCountLimitedDiscCache(File cacheDir,FileNameGenerator fileNameGenerator,int maxFileCount):第二个参数是通过图片的url生成的唯一文件名。 9 LimitedAgeDiscCache(File cacheDir, FileNameGenerator fileNameGenerator, long maxAge) :第二个参数同上 10 LimitedAgeDiscCache(File cacheDir, long maxAge):maxAge为定义的时间,超过时间后,图片将被删除 11 TotalSizeLimitedDiscCache(File cacheDir, FileNameGenerator fileNameGenerator, int maxCacheSize) :第二个参数同上 12 TotalSizeLimitedDiscCache(File cacheDir, int maxCacheSize) :定义缓存的大小,如超过了,就会删除old图片。 13 UnlimitedDiscCache(File cacheDir) :缓存没有限制 14 UnlimitedDiscCache(File cacheDir, FileNameGenerator fileNameGenerator):第二个参数同上
1 /** 2 * 设置图片保存到本地的参数 3 * @param maxImageWidthForDiscCache 保存的最大宽度 4 * @param maxImageHeightForDiscCache 保存的最大高度 5 * @param compressFormat 保存的压缩格式 6 * @param compressQuality 提示压缩的程度,有0-100.想png这种图片无损耗,就不必设置了 7 */ 8 discCacheExtraOptions(int maxImageWidthForDiscCache, 9 int maxImageHeightForDiscCache, 10 android.graphics.Bitmap.CompressFormat compressFormat, 11 int compressQuality)
1 /** 2 * 设置缓存文件的数量 3 * @param maxFileCount 数量 4 */ 5 discCacheFileCount(int maxFileCount)
1 /** 2 * 设置缓存的大小 3 * @param maxCacheSize 大小 4 */ 5 discCacheSize(int maxCacheSize)
1 /** 2 * 设置缓存文件的名字 3 * @param fileNameGenerator 4 */ 5 discCacheFileNameGenerator(FileNameGenerator fileNameGenerator) 6 fileNameGenerator: 7 HashCodeFileNameGenerator() :通过HashCode将url生成文件的唯一名字 8 Md5FileNameGenerator():通过Md5将url生产文件的唯一名字
1 /** 2 * 启动Log信息记录,用于查看异常信息 3 */ 4 enableLogging()
1 /** 2 * 设置缓存信息 3 * @param maxImageWidthForMemoryCache 缓存图片的最大宽度,默认为手机的屏幕宽度 4 * @param maxImageHeightForMemoryCache 缓存图片的最大高度,默认为手机的屏幕宽度 5 */ 6 memoryCacheExtraOptions(int maxImageWidthForMemoryCache, int maxImageHeightForMemoryCache)
1 /** 2 * 添加个线程池,进行下载 3 * @param executor 线程池 4 * 如果进行了这个设置,那么threadPoolSize(int),threadPriority(int),tasksProcessingOrder(QueueProcessingType) 5 * 将不会起作用 6 */ 7 taskExecutor(Executor executor)
1 /** 2 * 设置用于显示图片的线程池大小 3 * @param threadPoolSize 4 */ 5 threadPoolSize(int threadPoolSize)
1 /** 2 * 设置线程的优先级 3 * @param threadPriority 4 */ 5 threadPriority(int threadPriority)
1 /** 2 * 设置图片下载和显示的工作队列排序 3 * @param tasksProcessingType 4 */ 5 tasksProcessingOrder(QueueProcessingType tasksProcessingType)
1 /** 2 * 下载缓存图片 3 * @param executorForCachedImages 4 */ 5 taskExecutorForCachedImages(Executor executorForCachedImages)
0 0
- ImageLoader双缓存机制加载图片
- Universal-imageLoader缓存图片加载
- imageloader, 加载图片与缓存
- ImageLoader加载图片以及清理缓存
- ImageLoader进行图片缓存和加载
- 计算ImageLoader加载图片的缓存大小
- 用双缓存机制异步加载图片
- 自定义ImageLoader实现图片加载线程池、图片缓存
- imageloader缓存机制
- imageloader缓存机制
- ImageLoader缓存机制
- 图片的异步加载和双缓存学习笔记——ImageLoader
- 关于ImageLoader加载本地缓存下来的图片的问题?
- 关于ImageLoader的坑,加载之前缓存图片的问题。
- ImageLoader网络加载图片——可以本地缓存
- ImageLoader缓存图片
- ImageLoader图片缓存
- ImageLoader缓存图片
- 查看多线程使用cpu的情况
- 第23章 TCP基本原理
- VS2005设置可以在Release模式下调试
- C++ server
- C++模版深度解析
- ImageLoader双缓存机制加载图片
- python多线程thread/threading的使用
- 内部类的相关特性
- php相关
- C++ Socket 编程
- android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or da
- grails学习笔记-2、开发环境搭建
- jsb 多点与单点触摸设置
- ASP.NET中的<%%>,<%=%>,<%#%>,<%$%>