Glide 新版中GlideApp配置方法

时间:2021-7-21 作者:qvyue

Glide在4.0之后,我们使用的时候需要使用GlideApp这种调用方式,因为现在android组件化开发比较流行,GlideUtils工具类不一定是在app module里面,接下来我分两种情况分别记录一下。

第一种,直接在app的主项目中使用:

1、在gradle中添加依赖:

   api 'com.github.bumptech.glide:glide:4.11.0'
    annotationProcessor 'com.github.bumptech.glide:compiler:4.11.0'
    api 'jp.wasabeef:glide-transformations:4.3.0'

2、在主项目包下新建 CouponModule,extends AppGlideModule:

@GlideModule
public class CouponModule extends AppGlideModule {
        @Override
    public void applyOptions(@NonNull Context context, @NonNull GlideBuilder builder) {
        MemorySizeCalculator calculator = new MemorySizeCalculator.Builder(BasicApplication.getInstance()).build();
        int defaultMemoryCacheSize = calculator.getMemoryCacheSize();
        int defaultBitmapPoolSize = calculator.getBitmapPoolSize();
        int defaultArrayPoolSize = calculator.getArrayPoolSizeInBytes();
        builder.setDefaultRequestOptions(
                new RequestOptions()
                        .format(DecodeFormat.PREFER_RGB_565));
        builder.setMemoryCache(new LruResourceCache(defaultMemoryCacheSize/2));
        builder.setBitmapPool(new LruBitmapPool(defaultBitmapPoolSize/2));
        builder.setArrayPool(new LruArrayPool(defaultArrayPoolSize/2));
    }

}

里面的方法可以不做任何处理。
3、然后再清单文件中配置

在全局设置中将图片质量设置为565,如果遇到显示gif文件的时候,会出现gif图片周边出现黑框的问题,需要在加载图片时候,单独针对gif结尾的url将图片质量改回8888

public static void display(Context context, String url, ImageView imageView) {
        RequestOptions options = new RequestOptions()
                .centerCrop()
                .placeholder(R.drawable.ic_refresh_loading)
                .diskCacheStrategy(DiskCacheStrategy.AUTOMATIC)
                .error(R.drawable.ic_refresh_bad_net);
        if(!TextUtils.isEmpty(url) && url.endsWith(".gif")) {
            options.format(DecodeFormat.PREFER_ARGB_8888);
        }
        Glide.with(context)
                .load(url)
                .apply(options)
                .into(imageView);
    }
声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:qvyue@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。