zoukankan      html  css  js  c++  java
  • Android 开源框架 ( 二 ) 图片加载框架ImageLoader

    一:特点

     1)多线程下载图片,图片可以来源于网络,文件系统,项目文件夹 assets 中以及 drawable中等 

    2)支持随意的配置 ImageLoader,例如线程池,图片下载器,内存缓存策略,硬盘缓存策略,图片显示选项以及其他的一些配置 

    3)支持图片的内存缓存,文件系统缓存或者 SD 卡缓存 

    4)支持图片下载过程的监听

     5)根据控件(ImageView)的大小对 Bitmap 进行裁剪,减少 Bitmap 占用过多的内存

     6)较好的控制图片的加载过程,例如暂停图片加载,重新开始加载图片,一般使用在ListView,GridView 中,滑动过程中暂停加载图片,停止滑动的时候去加载图片 

    7)提供在较慢的网络下对图片进行加载

    二.基本使用

    1. 添加依赖

    compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'

    2.Application初始化

    // 初始化参数
            ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(context)
                    .threadPriority(Thread.NORM_PRIORITY - 2)               // 线程优先级
                    .denyCacheImageMultipleSizesInMemory()                  // 当同一个Uri获取不同大小的图片,缓存到内存时,只缓存一个。默认会缓存多个不同的大小的相同图片
                    .discCacheFileNameGenerator(new Md5FileNameGenerator()) // 将保存的时候的URI名称用MD5
                    .tasksProcessingOrder(QueueProcessingType.LIFO)         // 设置图片下载和显示的工作队列排序
                    .writeDebugLogs()                                       // 打印debug log
                    .build();
    
            // 全局初始化此配置
            ImageLoader.getInstance().init(config);

    3.基本使用

    mageLoader.displayImage(Constants.IMAGES[position],holder.iv,options);
    
    private DisplayImageOptions options = new DisplayImageOptions.Builder()
                .showStubImage(R.drawable.atguigu_logo)          // 设置图片下载期间显示的图片
                .showImageForEmptyUri(R.drawable.atguigu_logo)  // 设置图片Uri为空或是错误的时候显示的图片
                .showImageOnFail(R.drawable.atguigu_logo)       // 设置图片加载或解码过程中发生错误显示的图片
                .cacheInMemory(true)                        // 设置下载的图片是否缓存在内存中
                .cacheOnDisk(true)                          // 设置下载的图片是否缓存在SD卡中
                .displayer(new RoundedBitmapDisplayer(20))  // 设置成圆角图片
                .build();                                   // 创建配置过得DisplayImageOption对象;        
  • 相关阅读:
    【转】【人在职场】能力与价值
    【转】小议Bug敏感度---Bug敏感度的故事(一)
    【转】请尊重测试:测试从业五年有感
    【转】性能测试设计和LR原理的探讨
    【转】企业级Java应用最重要的4个性能指标
    暂存
    存储过程参数输入输出
    sqlserver 分页
    学习网址
    daatable动态创建
  • 原文地址:https://www.cnblogs.com/ITyunlin/p/11732970.html
Copyright © 2011-2022 走看看