美文网首页
Andriod --ImageLoaderConfigurati

Andriod --ImageLoaderConfigurati

作者: 哈哈撒拉嘿 | 来源:发表于2018-11-13 15:20 被阅读0次

    Universal-Image-Loader这个开源框架又来给我们造福了,它是一个图片加载框架,主要强大在于可以用于网络等图片源的加载,并且有多重缓存机制

一、简要说明:

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

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

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

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

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

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

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

/**

    * 比较常用的配置方案

    * @return

    */

    private ImageLoaderConfiguration getSimpleConfig() {

        //设置缓存的路径

        File cacheDir = StorageUtils.getOwnCacheDirectory(getApplicationContext(), "imageloader/Cache");

        ImageLoaderConfiguration config = new ImageLoaderConfiguration

            .Builder(getApplicationContext())

            .memoryCacheExtraOptions(480, 800) //即保存的每个缓存文件的最大长宽 

            .threadPriority(Thread.NORM_PRIORITY - 2) //线程池中线程的个数

            .denyCacheImageMultipleSizesInMemory() //禁止缓存多张图片

            .memoryCache(new LRULimitedMemoryCache(40*1024*1024)) //缓存策略

            .memoryCacheSize(50 * 1024 * 1024) //设置内存缓存的大小

            .diskCacheFileNameGenerator(new Md5FileNameGenerator()) //缓存文件名的保存方式

            .diskCacheSize(200 * 1024 * 1024) //磁盘缓存大小

            .tasksProcessingOrder(QueueProcessingType.LIFO) //工作队列

            .diskCacheFileCount(200) //缓存的文件数量 

            .diskCache(new UnlimitedDiskCache(cacheDir)) //自定义缓存路径 

            //.writeDebugLogs() // Remove for release app

            .build();

        return config;

    }

相关文章

网友评论

      本文标题:Andriod --ImageLoaderConfigurati

      本文链接:https://www.haomeiwen.com/subject/qjklfqtx.html