前言:

我们一般情况下使用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 {@Overridepublic void applyOptions(Context context, GlideBuilder builder) {//TODO}@Overridepublic void registerComponents(Context context, Glide glide) {//TODO}
}

2.配置清单文件

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

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

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

3.进行自定义配置

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

public class XiayuGlideModule implements GlideModule {@Overridepublic void applyOptions(Context context, GlideBuilder builder) {builder.setDiskCache();//自定义磁盘缓存builder.setMemoryCache();//自定义内存缓存builder.setBitmapPool(); //自定义图片池builder.setDiskCacheService();//自定义本地缓存的线程池builder.setResizeService();//自定义核心处理的线程池builder.setDecodeFormat();//自定义图片质量}@Overridepublic 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 {@Overridepublic void applyOptions(Context context, GlideBuilder builder) {//自定义图片质量builder.setDecodeFormat(DecodeFormat.PREFER_ARGB_8888);}@Overridepublic void registerComponents(Context context, Glide glide) {//TO}
}

5.其他

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

Glide-通过Modules定制Glide相关推荐

  1. glide缩略图存储 android,Glide 显示视频缩略图及遇到的坑

    Glide 显示视频缩略图及遇到的坑 实现原理 Glide支持视频格式的文件,但是在3.x里会有些欠缺.其底层是通过 MediaMetadataRetriever实现的. MediaMetadataR ...

  2. android glide圆形图片,Android Glide加载图片成圆形

    释放双眼,带上耳机,听听看~! 今天,简单讲解android使用glide加载图片成圆形. 这个很简单,因为之前需要在RecyclerView里加载圆形图片,所以在网上查找了资料,很简单就解决了. 1 ...

  3. Glide.Placeholder(loadingImage) 之后 Glide 载图片不显示问题

    直接说问题 我们在加载的时候 就是还没加载完成的是 显示占位符 我们一般会加一个placeholder (loadingImage)如下 Glide.with(mContext).load(path) ...

  4. Glide(二)Glide的with,load,into

    Glide的with,load,into 在Glide的常规使用中,我们是这样使用的: protected void onCreate(Bundle savedInstanceState) {supe ...

  5. Glide 4.0 相比 Glide 3.0 及使用详解

    1.变化 单独列出的更改太多,但这里有一些亮点: 新的文档,用户可以通过提交请求到Glide's gh-pages分支贡献. 用户可以添加新类型或自定义选项集来轻松地自定义Glide流畅的API. 大 ...

  6. android glide裁剪图片大小,Glide系列(二)------图片剪裁

    一.简介: 大家应该知道,我们在见面上显示的ImageView的大小和从网络取到的图片的大小是不一样的,最好的结果是网络图片刚好满足我们ImageView的尺寸,然而实际上,网络获取的图片或者从我们手 ...

  7. glide 压缩图拍呢_用Glide-图片的压缩-图片压缩原理

    前言: 这一节里面我们将介绍Glide如何对图片进行压缩,这一点在加载图片较多或者加载的图片像素很高的程序里面至关重要 Glide 系列目录 1.Glide-入门教程 2.Glide-占位图以及加载动 ...

  8. 用Glide-图片的压缩-图片压缩原理

    前言: 这一节里面我们将介绍Glide如何对图片进行压缩,这一点在加载图片较多或者加载的图片像素很高的程序里面至关重要 Glide 系列目录 1.Glide-入门教程 2.Glide-占位图以及加载动 ...

  9. Glide-源码详解

    前言: 之前的文章中,笔者介绍了很多Glide的使用方法,但是由于Glide框架封装得太好了,很多人在使用的时候,只是知其然不知其所以然,为了不要仅仅成为"cv工程师",只会复制粘 ...

最新文章

  1. 什么样的人适合学习UI?
  2. 【Swift】UITableViewCell 中 TTTAttributedLabel 超链接无法点击的问题
  3. 关于Spring的69个面试问答——终极列表
  4. 一键导出Origin图片MATLAB代码
  5. 英伟达账号登录邮箱验证收不到_【硬核教学】解决登录230锁定
  6. 疑问:关于Microsoft Office InfoPath 2003 Toolkit for Visual Studio 2005 Beta 2
  7. 一个IT人的非典型职场十年 (5)
  8. bzoj 4372 烁烁的游戏 —— 动态点分治+树状数组
  9. Python调用C函数的方法以及如何编写Python的C扩展
  10. R语言 神经网络与深度学习(二)
  11. Vue学习笔记(利用网易云API实现音乐播放器 实例)
  12. 单片机外文参考文献期刊_单片机-英文参考文献
  13. 生成pdf设置中文字体出错 \simsun.ttc' with 'Identity-H' is not recognized或者type of font{0} is not recognized
  14. C语言:编程打印图形
  15. c++ 15个语言特性,C++11/14的新特性(更简洁)
  16. 机器人手眼标定Ax=xB(eye to hand和eye in hand)及平面九点法标定
  17. 大专生从零开始重新学习c#的第八天
  18. NorFlash与NandFlash对比
  19. C#调用dll报错:无法加载dll,找不到指定模块
  20. 案例19:Java私房菜定制上门服务系统设计与实现开题报告

热门文章

  1. PREFIX 参照表 网络位 对照表
  2. Android App通过蒲公英实现更新
  3. 硬盘分区那点事儿(MBR和GPT)
  4. TCP 的那些事 | SACK
  5. Oracle:ORA-00054 资源正忙
  6. python 报错:No connection adapters were found for '%s' % url)
  7. c语言求某年某月1日是星期几,蔡勒(Zeller)公式:根据日期推算是星期几
  8. python中文朗读_用python实现的文字朗读
  9. 双曲铝单板是怎么生产的?
  10. 引导路径动画 (2)