Glide-通过Modules定制Glide
来源:互联网 发布:聚合数据接口使用 编辑:程序博客网 时间:2024/06/07 11:03
前言:
我们一般情况下使用Glide都很简单,只用简单的调用几个方法就能够很好的显示图片了,但其实Glide在初始化的时候进行了一系列的默认配置,比如缓存的配置,图片质量的配置等等.接下来我们就介绍一下一个比较高级的功能,通过Modules定制自己的个性Glide
Glide 系列目录
- 1.Glide-入门教程
- 2.Glide-占位图以及加载动画
- 3.Glide-加载本地图片
- 4.Glide-加载Gif
- 5.Glide-绑定生命周期
- 6.Glide-内存缓存与磁盘缓存
- 7.Glide-通过Modules定制Glide
- 8.Glide-自定义缓存
- 9.Glide-图片的压缩
- 10.Glide-图片预处理(圆角,高斯模糊等)
- 11.Glide-图片的剪裁(ScaleType)
- 12.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会依次遍历并读取
4 0
- Glide-通过Modules定制Glide
- glide:用Modules定制Glide
- Glide入门教程——16.用Modules定制Glide
- Glide modules
- glide
- Glide
- Glide
- glide
- Glide
- Glide
- Glide
- Glide
- glide
- Glide
- Glide
- Glide
- Glide
- Glide
- leetcode 98. Validate Binary Search Tree
- 算法基础——快速排序
- RS转TTL芯片
- 61. mybatic insert异常:BindingException: Parameter 'name' not found【从零开始学Spring B】
- 局域网DNS劫持
- Glide-通过Modules定制Glide
- 效率提升工具--高级剪贴板Ditto
- Java内存模型与线程
- Openlayers之图形绘制
- eclipse 与git 整合 Egit 用户指南
- jQuery 选择器 - 1
- springmvc中的数据校验
- linux部分指令演示
- oracle 每日一题-function.RETURN语句