Glide-通过Modules定制Glide

本文介绍了如何通过实现GlideModule并配置清单文件来自定义Glide的设置,特别是展示了如何调整默认的图片质量,从RGB_565改为ARGB_8888,以达到更好的图片显示效果。

前言:

我们一般情况下使用Glide都很简单,只用简单的调用几个方法就能够很好的显示图片了,但其实Glide在初始化的时候进行了一系列的默认配置,比如缓存的配置,图片质量的配置等等.接下来我们就介绍一下一个比较高级的功能,通过Modules定制自己的个性Glide

Glide 系列目录

1.创建一个类实现GlideModule

public class XiayuGlideModule implements GlideModule {

    @Override
    public void applyOptions(Context context, GlideBuilder builder) {
       //TODO
    }

    @Override
    public void registerComponents(Context context, Glide glide) {
       //TODO
    }
}

2.配置清单文件

在AndroidManifest中配置刚刚创建的GlideModule,需要在application节点下添加

<application>
    ...

    <meta-data
        android:name="com.xiayu.xiayuglidedemo.XiayuGlideModule"
        android:value="GlideModule" />
</application>

其中android:name就是刚才创建的GlideModule的实现类

3.进行自定义配置

刚才创建的GlideModule的实现类时,会要实现两个方法,这里要用到的是其中的applyOptions方法,applyOptions方法里面提供了一个GlideBuilder,通过GlideBuilder我们就能实现自定义配置了

public class XiayuGlideModule implements GlideModule {

    @Override
    public void applyOptions(Context context, GlideBuilder builder) {

        builder.setDiskCache();//自定义磁盘缓存

        builder.setMemoryCache();//自定义内存缓存

        builder.setBitmapPool(); //自定义图片池

        builder.setDiskCacheService();//自定义本地缓存的线程池

        builder.setResizeService();//自定义核心处理的线程池

        builder.setDecodeFormat();//自定义图片质量

    }

    @Override
    public void registerComponents(Context context, Glide glide) {
        //TO
    }
}

4.例子(配置默认图片质量)

由于Glide的配置涉及到的东西比较多,在以后的文章里面会对每一种配置做说明具体介绍,这里就先示范一个比较简单的配置,那就是图片质量配置

用过Picasso的朋友应该知道,Picasso默认的图片质量是ARGB_8888,而Glide默认的图片质量是RGB_565,这里我们就来修改默认配置,让Glide的默认质量为ARGB_8888

(ARGB_8888是指32位图,即每个像素占4byte)
(RGB_565是16位图,即每个像素占2byte)

public class XiayuGlideModule implements GlideModule {

    @Override
    public void applyOptions(Context context, GlideBuilder builder) {

        //自定义图片质量
        builder.setDecodeFormat(DecodeFormat.PREFER_ARGB_8888);

    }

    @Override
    public void registerComponents(Context context, Glide glide) {
        //TO
    }
}

5.其他

在清单文件中可以配置多个GlideModule,Glide会依次遍历并读取

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值