ImageLoader初始化时的参数设置

public static void initImageLoader(Context context) {
                // 获取本地缓存的目录,该目录在SDCard的根目录下
                File cacheDir = StorageUtils.getOwnCacheDirectory(context, SD_PATH);

                ImageLoaderConfiguration.Builder builder = new ImageLoaderConfiguration.Builder(
                                context);
                // 设置线程数量
                // 设定线程等级比普通低一点
                builder.threadPriority(Thread.NORM_PRIORITY - 1);
                // 设定内存缓存为弱缓存
                builder.memoryCache(new WeakMemoryCache());
                // 设定内存图片缓存大小限制,不设置默认为屏幕的宽高
                builder.memoryCacheExtraOptions(480, 800);
                // 缓存到内存的最大数据
                builder.memoryCacheSize(8 * 1024 * 1024);
                // 缓存到文件的最大数据
                builder.discCacheSize(50 * 1024 * 1024);
                // 文件数量
                builder.discCacheFileCount(1000);
                // 设定只保存同一尺寸的图片在内存
                builder.denyCacheImageMultipleSizesInMemory();
                // 设定缓存的SDcard目录,UnlimitDiscCache速度最快
                builder.discCache(new UnlimitedDiscCache(cacheDir));
                // 设定缓存到SDCard目录的文件命名
                builder.discCacheFileNameGenerator(new HashCodeFileNameGenerator());
                // 设定网络连接超时 timeout: 10s 读取网络连接超时read timeout: 60s
                builder.imageDownloader(new BaseImageDownloader(context, 10000, 60000));
                // 设置ImageLoader的配置参数
                builder.defaultDisplayImageOptions(initDisplayOptions(true));

                // 初始化ImageLoader
                ImageLoader.getInstance().init(builder.build());
        }[/mw_shl_code]

[mw_shl_code=java,true]public static DisplayImageOptions initDisplayOptions(boolean isShowDefault) {
                DisplayImageOptions.Builder displayImageOptionsBuilder = new DisplayImageOptions.Builder();
                // 设置图片缩放方式
                // EXACTLY: 图像将完全按比例缩小的目标大小
                // EXACTLY_STRETCHED: 图片会缩放到目标大小
                // IN_SAMPLE_INT: 图像将被二次采样的整数倍
                // IN_SAMPLE_POWER_OF_2: 图片将降低2倍,直到下一减少步骤,使图像更小的目标大小
                // NONE: 图片不会调整
                displayImageOptionsBuilder.imageScaleType(ImageScaleType.EXACTLY);
                if (isShowDefault) {
                        // 默认显示的图片
                        displayImageOptionsBuilder.showImageOnLoading(R.drawable.ic_stub);
                        // 地址为空的默认显示图片
                        displayImageOptionsBuilder
                                        .showImageForEmptyUri(R.drawable.ic_empty);
                        // 加载失败的显示图片
                        displayImageOptionsBuilder.showImageOnFail(R.drawable.ic_error);
                }
                // 开启内存缓存
                displayImageOptionsBuilder.cacheInMemory(true);
                // 开启SDCard缓存
                displayImageOptionsBuilder.cacheOnDisc(true);
                // 设置图片的编码格式为RGB_565,此格式比ARGB_8888快
                displayImageOptionsBuilder.bitmapConfig(Bitmap.Config.RGB_565);
                displayImageOptionsBuilder.considerExifParams(true);
                // 设置圆角,不需要请删除
                // displayImageOptionsBuilder.displayer(new RoundedBitmapDisplayer(5));

                return displayImageOptionsBuilder.build();

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值