图片的异步加载和双缓存学习笔记——ImageLoaderConfiguration

来源:互联网 发布:sql字段追加内容 编辑:程序博客网 时间:2024/06/03 14:54

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 fileNameGenerator4      */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 threadPoolSize4      */5     threadPoolSize(int threadPoolSize)
1     /**2      * 设置线程的优先级3      * @param threadPriority4      */5     threadPriority(int threadPriority)
1     /**2      * 设置图片下载和显示的工作队列排序3      * @param tasksProcessingType4      */5     tasksProcessingOrder(QueueProcessingType tasksProcessingType)
1     /**2      * 下载缓存图片3      * @param executorForCachedImages4      */5     taskExecutorForCachedImages(Executor executorForCachedImages)

 源码地址下载  https://github.com/nostra13/Android-Universal-Image-Loader

 

0 0