文章标题

ImageLoaderConfiguration:是针对图片缓存的全局配置,主要有线程类、缓存大小、磁盘大小、图片下载与解析、日志方面的配置。

DisplayImageOptions:用于指导每一个Imageloader根据网络图片的状态(空白、下载错误、正在下载)显示对应的图片,是否将缓存加载到磁盘上,下载完后对图片进行怎么样的处理。

ImageLoader:是具体下载图片,缓存图片,显示图片的具体执行类,它有两个具体的方法displayImage(…)、loadImage(…),但是其实最终他们的实现都是displayImage(…)。

ImageLoaderConfiguration

ImageLoader imageLoader = ImageLoader.getInstance();

ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(getApplicationContext())

    .memoryCacheExtraOptions(480, 800) // 内存缓存图片的最大宽高 

    .discCacheExtraOptions(480, 800, CompressFormat.JPEG, 75) // 图片处理器,负责从磁盘缓存读取或写入前对图片进行处理 

    .threadPoolSize(3)//线程池数 

    .threadPriority(Thread.NORM_PRIORITY - 1)//线程优先级 

    .denyCacheImageMultipleSizesInMemory()/设置在内存中缓存图像的多种尺寸//加载同一URL图片时,imageView从小变大时,从内存缓存中加载 //不建议使用   

    .memoryCache(new UsingFreqLimitedMemoryCache(2 * 1024 * 1024)) // 超过设定的缓存大小时,内存缓存的清除机制

    .discCache(new UnlimitedDiscCache(cacheDir)) //超过设定的缓存大小时,磁盘缓存的清除机制.discCacheFileNameGenerator(new HashCodeFileNameGenerator())//磁盘缓存的文件名的命名方式//一般使用默认值 (获取文件名称的hashcode然后转换成字符串)或MD5   new Md5FileNameGenerator()源文件的名称同过md5加密后保存

 .defaultDisplayImageOptions(DisplayImageOptions.createSimple())

 .enableLogging()//开启ImageLoader工作日志
  .memoryCacheSize(100)//最大缓存大小//默认值,应用程序可用内存的1/8.build();
imageLoader.init(config);

//完全退出程序时
ImageLoader.getInstance().clearDiskCache();//清除磁盘缓存
ImageLoader.getInstance().clearMemoryCache();//清除内存缓存

DisplayImageOptions

DisplayImageOptions options = new DisplayImageOptions.Builder()  

        .showImageOnLoading(R.drawable.loading) //设置图片在下载期间显示的图片  

        .showImageForEmptyUri(R.drawable.ic_launcher)//设置图片Uri为空或是错误的时候显示的图片  

        .showImageOnFail(R.drawable.error)  //设置图片加载/解码过程中错误时候显示的图片

        .cacheInMemory(true)//设置下载的图片是否缓存在内存中  

        .cacheOnDisk(true)//设置下载的图片是否缓存在SD卡中  

        .considerExifParams(true)  //是否考虑JPEG图像EXIF参数(旋转,翻转)

        .imageScaleType(ImageScaleType.IN_SAMPLE_INT)//设置图片以如何的编码方式显示  
.bitmapConfig(Bitmap.Config.RGB_565)//设置图片的解码类型/默认是ARGB_8888,使用RGB_565会比使用ARGB_8888少消耗2倍的内存

         .delayBeforeLoading(0)//int delayInMillis为你设置的下载前的延迟时间

        .resetViewBeforeLoading(true)//设置图片在下载前是否重置,复位  

        .displayer(new RoundedBitmapDisplayer(20))//不推荐用!!!!是否设置为圆角,弧度为多少//他会创建新的ARGB_8888格式的Bitmap对象;  

        .displayer(new FadeInBitmapDisplayer(100))//图片加载好后渐入的动画时间,可能会出现闪动

        .build();//构建完成

DisplayImageOptions

DisplayImageOptions options = new DisplayImageOptions.Builder()  

 .showImageOnLoading(R.drawable.loading) //设置图片在下载期间显示的图片 
 .showImageForEmptyUri(R.drawable.ic_launcher)//设置图片Uri为空或是错误的时候显示的图片  

 .showImageOnFail(R.drawable.error)  //设置图片加载/解码过程中错误时候显示的图片
  .cacheInMemory(true)//设置下载的图片是否缓存在内存中  
  .cacheOnDisk(true)//设置下载的图片是否缓存在SD卡中  
  .imageScaleType(ImageScaleType.IN_SAMPLE_INT)//设置图片以如何的编码方式显示  
  .bitmapConfig(Bitmap.Config.RGB_565)//设置图片的解码类型
  .build();//构建完成

ImageScaleType.EXACTLY :图像将完全按比例缩小的目标大小

ImageScaleType.EXACTLY_STRETCHED:图片会缩放到目标大小完全

ImageScaleType.IN_SAMPLE_INT:图像将被二次采样的整数倍

ImageScaleType.IN_SAMPLE_POWER_OF_2:图片将降低2倍,直到下一减少步骤,使图像更小的目标大小
ImageScaleType.NONE:图片不会调整
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值