zoukankan      html  css  js  c++  java
  • ImageLoader配置(凝视)

    /**
         * 配置ImageLoader
         */
        private void configImageLoader() {
    
            File discCacheDir = StorageUtils.getOwnCacheDirectory(getApplicationContext(), "/iWorker/Cache/images");
            int memClass = ((android.app.ActivityManager) getSystemService(Context.ACTIVITY_SERVICE)).getMemoryClass();
            memClass = memClass > 32 ? 32 : memClass;
            // 使用可用内存的1/8作为图片缓存
            Logger.d( " memory memClass size:{%s}", memClass);
            final int cacheSize = 1024 * 1024 * memClass / 4;
            Logger.d( " memory cache size:{%s}", cacheSize);
            ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(getApplicationContext())
                    .memoryCacheExtraOptions(240, 240).taskExecutor(Executors.newFixedThreadPool(10))
                            // 开启十个线程下载图片,默认是3个
                            // 设置缓存的每一个文件的最大宽高,默认是屏幕宽高
                            // .diskCacheExtraOptions(1280, 1280, null)
                            // 存放到SD卡上的最大宽高
                            // .diskCacheExtraOptions(240, 240, null)
                            // .threadPoolSize(3)
                            // 设置线程池大小,默觉得3
                            // .denyCacheImageMultipleSizesInMemory()
                            // 禁止缓存多份不同大小的图片
                            // .threadPriority(Thread.NORM_PRIORITY - 1)
                            // 线程优先级。默认
                            // .tasksProcessingOrder(QueueProcessingType.FIFO)
                            // .taskExecutor(executor)
                    .memoryCache(new LruMemoryCache(cacheSize))
                            // 缓存策略
                            // 默认已设为1/8
                            // .memoryCacheSize(cacheSize)
                            // .memoryCacheSizePercentage(13)//设置最大内存缓存大小
                    .diskCache(new UnlimitedDiscCache(discCacheDir))
                            // 硬盘缓存策略:这个缓存类没有不论什么的限制
                            // Sets disk cache for
                            // images.默觉得Android/data/[app_package_name]/cache
                            // .diskCacheSize(50 * 1024 * 1024)//50M
                            // .diskCacheFileCount(500)//Sets maximum file count in disk
                            // cache directory.设置最大文件数
                            // .diskCacheFileNameGenerator(new
                            // HashCodeFileNameGenerator())//将保存的时候的URI名称用HASHCODE加密
                            // .imageDownloader(new IworkerImageDownloader(this))
                            // .defaultDisplayImageOptions(DisplayImageOptions.createSimple())
                             .writeDebugLogs()// 输出Debug信息,释放版本号的时候,不须要这句
                    .build();
            ImageLoader.getInstance().init(config);
        }
    一般在自己定义的Application中进行配置。





  • 相关阅读:
    TCP的三次握手和四次挥手理解及面试题
    linux网卡配置文件参数
    linux的常用指令和配置文件
    django中的modelform和modelfoemset
    django中的form表单验证
    php快速开发的学习经历
    一个微信支付商场的经历
    https的学习过程
    使用java访问elasticsearch创建索引
    写博客是为什么
  • 原文地址:https://www.cnblogs.com/zsychanpin/p/6992300.html
Copyright © 2011-2022 走看看