拆Glide系列
文章平均质量分 59
这里用于存放自己拆Glide的文章
firtzXu
这个作者很懒,什么都没留下…
展开
-
Glide 的 transformation
Glide 里面内置了一套图片改造机制,名叫 Transformation ;利用这套机制,我们可以轻松实现以下的效果:调用的方法也很简单,就拿其中一个来举例:RequestOptions requestOptions = new RequestOptions() .transforms(new CenterCrop(), new CircleCrop());Glide.with(t...原创 2019-12-15 11:16:49 · 1396 阅读 · 0 评论 -
Glide通过清单文件加载GlideModule的原理
前言Glide 是 Google 官方推荐的一款图片加载库,我们可以通过配置 GlideModule 来修改 Glide 的一些初始化配置。具体做法如下:继承 GlideModule 接口并实现其对应的方法:public class MyGlideModule implements GlideModule { @Override public void applyOp...原创 2018-06-21 00:11:10 · 5629 阅读 · 1 评论 -
Glide之外层生命周期监听的方法
Glide 一个重要的特点就是通过一个透明的 Fragment 来感知外层 Activity 或 Fragment的生命周期,在 onStart 方法里面启动网络请求,onStop 里面暂停请求,onDestroy 里面解除监听并释放内存。 那么,Glide 是怎么做到这个监听事件的?用于监听的接口Glide 里面用于监听生命周期的接口总有两个,它们分别是 Lifec...原创 2018-07-08 18:45:47 · 1124 阅读 · 0 评论 -
Glide里面的几个线程池
一.概述在日常开中,如果经常使用到线程的话,如何快捷创建和关闭回收线程是一件较为麻烦的事情,因此 阿里巴巴的Java规范插件 一直都是建议使用线程池来管理线程使用线程池有那些好处?复用存在的线程,减少线程的创建,减少线程的开销,进一步提高了效率通过阻塞队列来控制最大的线程并发数,让内存等消耗限制在一个合理的范围内二.线程池的相关参数我们要怎么使用线程池呢?我们先来看下线程池参数最全...原创 2019-03-31 00:09:43 · 6241 阅读 · 2 评论 -
Glide源码分析之如何获取到View的宽高值
我们知道 Glide 默认会依据传入的 View 的宽高来裁剪图片的宽高,那么 Glide 是怎么拿到 View 的宽高值的呢?我们带着疑问,看下源码吧在 Glide.with(FragmentActivity).load(URL).into(imageView); 这个过程中,我们在 into 里面传入了 ImageView ,通过查看源码:public ViewTarget<...原创 2019-06-08 22:44:37 · 763 阅读 · 0 评论 -
Glide源码分析之with方法
Glide 是一个开源的图片处理库,源代码的学习对于我们的帮助是非常大的,不过要看源码项目总得有个流程,这里我就从 Glide.with(FragmentActivity).load(URL).apply(centerCropTransform()) .into(imageViewRes); 作为阅读流程,首先就从 with(FragmentActivity) 开始开始吧。...原创 2019-04-16 14:28:40 · 884 阅读 · 0 评论 -
Glide源码分析之load方法
这里承接上篇 Glide源码分析之with方法 ,这篇将对Glide.with(FragmentActivity).load(URL).apply(centerCropTransform()) .into(imageViewRes); 中的 load 方法进行分析(PS:本人阅读的源码为 Glide 4.7 版本)先贴出 load 方法的时序图:接着就来依据这个时序图来阅读源码吧S...原创 2019-05-02 14:00:01 · 1042 阅读 · 0 评论