Universal Image Loader for Android一些方法的参数

来源:互联网 发布:python 选择日期区间 编辑:程序博客网 时间:2024/05/17 03:14
  1. DisplayImageOptions options = new DisplayImageOptions.Builder()  
  2.     // 设置图片在下载期间显示的图片  
  3.     .showImageOnLoading(R.drawable.ic_launcher)//  
  4.     // 设置图片Uri为空或是错误的时候显示的图片  
  5.     .showImageForEmptyUri(R.drawable.ic_launcher)//  
  6.     // 设置图片加载/解码过程中错误时候显示的图片  
  7.     .showImageOnFail(R.drawable.ic_launcher)//  
  8.     // 设置图片在下载前是否重置,复位  
  9.     .resetViewBeforeLoading()//  
  10.     // 设置下载的图片是否缓存在内存中  
  11.     .cacheInMemory(true)//  
  12.     // 设置下载的图片是否缓存在SD卡中  
  13.     .cacheOnDisc(true)//  
  14.     .considerExifParams(true)//  
  15.     // 设置图片的解码类型,默认值——Bitmap.Config.ARGB_8888  
  16.     .bitmapConfig(Bitmap.Config.RGB_565)  
  17.     /** 
  18.      *  设置图片的解码配置 android.graphics.BitmapFactory.Options 
  19.      *  注意:选择inSampleSize将不考虑的选项 
  20.      * 会根据imageScaleType(imageScaleType)选项设置大小 
  21.      *  注意:这个选项重叠bitmapConfig()选项。 
  22.      */  
  23.     //.decodingOptions(decodingOptions)  
  24.     // 设置图片下载前的延迟  
  25.      //.delayBeforeLoading( delayInMillis)  
  26.     // 设置额外的内容给ImageDownloader  
  27.     // . extraForDownloader(Object extra)  
  28.     /** 
  29.      *  设置图片加入缓存前,对bitmap进行设置 BitmapProcessor preProcessor 
  30.      *  设置位图处理器将位图过程之前,他们会在内存中缓存。所以内存缓存将包含位图处理传入的预处理器。<span style="font-family: Arial, Helvetica, sans-serif;">*图像预处理的即使在内存中缓存是禁用<span style="white-space:pre">                     </span>的。</span><span style="font-family: Arial, Helvetica, sans-serif;">*/</span>  
[java] view plaincopy在CODE上查看代码片派生到我的代码片
  1.     .preProcessor(null)  
  2.     // 设置显示前的图片,显示后这个图片一直保留在缓存中  
  3.     // .postProcessor(BitmapProcessor postProcessor)  
  4.         /** 
  5.          * 设置图片以如何的编码方式显示 imageScaleType(ImageScaleType imageScaleType) 
  6.          * EXACTLY :图像将完全按比例缩小的目标大小 
  7.          * EXACTLY_STRETCHED:图片会缩放到目标大小完全 IN_SAMPLE_INT:图像将被二次采样的整数倍 
  8.          * IN_SAMPLE_POWER_OF_2:图片将降低2倍,直到下一减少步骤,使图像更小的目标大小 
  9.          *  NONE:图片不会调整 
  10.          */  
  11.     // .imageScaleType( imageScaleType)  
  12.     /** 
  13.      * 设置图片的显示方式 默认值- 
  14.      * DefaultConfigurationFactory.createBitmapDisplayer() 
  15.      *  
  16.      * @param displayer 
  17.      *            RoundedBitmapDisplayer(int roundPixels)设置圆角图片 
  18.      *            FakeBitmapDisplayer()这个类什么都没做 
  19.      *            FadeInBitmapDisplayer(int durationMillis)设置图片渐显的时间 
  20.      *             SimpleBitmapDisplayer()正常显示一张图片  
  21.      */  
  22.   
  23.   
  24.     .displayer(new RoundedBitmapDisplayer(20))//  
  25.     .build();  
  26.   
  27.   
  28. ageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(  
  29.         context)  
  30.   
  31.   
  32. /** 
  33.  * 你可以设置你自己实现的内存缓存 
  34.  */  
  35. .memoryCache(new LruMemoryCache(2 * 1024 * 1024))  
  36.     /** 
  37.      * 为位图最大内存缓存大小(以字节为单位),默认值,可用应用程序内存的1/8 
  38.      * 注意:如果你使用这个方法,那么LruMemoryCache将被用作内存缓存。 
  39.      * 您可以使用memoryCache(MemoryCacheAware)方法来设置自己的MemoryCacheAware的实现。    
  40.      */  
  41. .memoryCacheSize(2 * 1024 * 1024)  
  42.   
  43. /** 
  44.  * 当同一个Uri获取不同大小的图片,缓存到内存时,只缓存一个。默认会缓存多个不同的大小的相同图片 
  45.  */  
  46. .denyCacheImageMultipleSizesInMemory()  
  47.   
  48. /** 
  49.  * 设置本地图片缓存 也可以设置你自己实现 盘缓存必需实现 DiscCacheAware接口 
  50.  * 类型(在com.nostra13.universalimageloader.cache.disc.impl包下能找到如下的类): 
  51.  * FileCountLimitedDiscCache(File cacheDir, int maxFileCount):设置缓存路径和缓存文件的数量,超过数量后,old将被删除 
  52.  *  
  53.  * FileCountLimitedDiscCache(File cacheDir,FileNameGenerator fileNameGenerator,int maxFileCount):第二个参数是通过图片的url生成的唯一文件名。 
  54.  *  
  55.  * LimitedAgeDiscCache(File cacheDir, FileNameGenerator fileNameGenerator, long maxAge) :第二个参数同上 
  56.  *  
  57.  * LimitedAgeDiscCache(File cacheDir, long maxAge):maxAge为定义的时间,超过时间后,图片将被删除 
  58.  *  
  59.  * TotalSizeLimitedDiscCache(File cacheDir, FileNameGenerator fileNameGenerator, int maxCacheSize) :第二个参数同上 
  60.  *  
  61.  * TotalSizeLimitedDiscCache(File cacheDir, int maxCacheSize) :定义缓存的大小,如超过了,就会删除old图片。 UnlimitedDiscCache(File cacheDir) :缓存没有限制 
  62.  *  
  63.  * UnlimitedDiscCache(File cacheDir, FileNameGenerator fileNameGenerator):第二个参数同上 
  64.  */  
  65. .discCache(new FileCountLimitedDiscCache(new File("/sdcard/cache"), 100))//  
  66. /** 
  67.  * 设置缓存的大小(以字节为单位)默认:本地缓存是不限制大小 
  68.  * 注意:如果你使用这个方法,那么TotalSizeLimitedDiscCache将被用作磁盘缓存 
  69.  * 您可以使用discCache(DiscCacheAware)DiscCacheAware引入自己的实现方法 
  70.  *  
  71.  * @param maxCacheSize大小 
  72.  */  
  73. .discCacheSize(10*1024*1024)  
  74. /** 
  75.     * 设置图片保存到本地的参数 
  76.     * @param maxImageWidthForDiscCache 保存的最大宽度 
  77.     * @param maxImageHeightForDiscCache 保存的最大高度 
  78.     * @param compressFormat    保存的压缩格式 
  79.     * @param compressQuality 提示压缩的程度,有0-100.想png这种图片无损耗,就不必设置了 
  80.     * @param BitmapProcessor 处理位图,可以更改原来的位图,实现必须是线程安全的。 
  81.     */  
  82.   .discCacheExtraOptions(100,10,android.graphics.Bitmap.CompressFormat.JPEG,0null )  
  83. /** 
  84.  * 设置缓存文件的数量 
  85.  * @param maxFileCount数量 
  86.  */  
  87. .discCacheFileCount(100)  
  88. /** 
  89.  * .taskExecutor(Executor executor) 添加个线程池,进行下载 
  90.  *  
  91.  * @param executor 
  92.  *            线程池 
  93.  *            如果进行了这个设置,那么threadPoolSize(int),threadPriority( 
  94.  *            int),tasksProcessingOrder(QueueProcessingType) 
  95.  *            将不会起作用 
  96.  */  
  97.   
  98. /** 
  99.  * 设置缓存文件的名字 
  100.  *  
  101.  * @param fileNameGenerator 
  102.  *            discCacheFileNameGenerator(FileNameGenerator 
  103.  *            fileNameGenerator) 参数fileNameGenerator: 
  104.  *            HashCodeFileNameGenerator 
  105.  *            ():通过HashCode将url生成文件的唯一名字 
  106.  *            Md5FileNameGenerator():通过Md5将url生产文件的唯一名字 
  107.  */  
  108. .discCacheFileNameGenerator(new Md5FileNameGenerator())  
  109.   
  110. /** 
  111.  * 设置用于显示图片的线程池大小 
  112.  * @param threadPoolSize 
  113.  */  
  114. .threadPoolSize(5)//  
  115.   
  116.   
  117. /** 
  118.  * 设置线程的优先级 
  119.  * @param threadPriority 
  120.  */  
  121. .threadPriority(Thread.MIN_PRIORITY + 3)  
  122. /** 
  123.  * tasksProcessingOrder(QueueProcessingType tasksProcessingType) 
  124.  * 设置图片下载和显示的工作队列排序 
  125.  *  
  126.  * @param tasksProcessingType 
  127.  */  
  128. .tasksProcessingOrder(QueueProcessingType.LIFO)  
  129. /** 
  130.  * taskExecutorForCachedImages(Executor executorForCachedImages) 
  131.  * 下载缓存图片 
  132.  *  
  133.  * @param executorForCachedImages 
  134.  */  
  135. // =========================================================//  
  136. .writeDebugLogs()  
  137. .build();  
  138.   
  139.   
  140. ImageLoader.getInstance().init(config);  

参考:http://blog.csdn.net/qy1387/article/details/12947621

http://www.eoeandroid.com/thread-318344-1-1.html

0 0
原创粉丝点击