Zhoujie Blog

Android Glide 3.7.0 源码解析(五) , 如何获得ImageView的宽高

前言 通过前面的 Android Glide 3.7.0 源码解析 (二) , 从一次图片加载流程看源码 我们知道 Request(真实) 只有在图片组件的大小准备好了才会开始真正的加载 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 // GenericRequest public void begin() {...

Android Glide 3.7.0 源码解析(四), BitmapPool作用及原理

一、作用 Android 中图片显示的实体其实是一个 Bitmap 对象, 每次图片显示时, 都会构建一个 Bitmap 对象, 不用时再销毁 假设: 一个长列表每项都有个图片需要显示, 我们在快速滑动长列表的时候, 会产生什么? Bitmap 对象被频繁的创建和释放, 导致 GC 频繁 如何解决上述问题? BitmapPool , 一个 Bitmap 的对象池, 让...

Android Glide 3.7.0 源码解析(三), 生命周期绑定

一、流程图解 注意: 一个 Fragment / Activity 会对应生成一个 RequestManager 一个 Application 对应一个 applicationManager , 这是一个全局唯一的 RequestManager 每个 RequestManager 会有一个 Lifecycle 和 一个 RequestTracker ...

Android Glide 3.7.0 源码解析 (二) , 从一次图片加载流程看源码

一、加载图片代码 1 Glide.with(activity).load(url).into(imageView); 二、流程图 Glide.with 方法, 创建 RequestManager 实例 RequestManager.load 方法, 创建 GenericRequestBuilder 实例, 并打包编/解码, 转码, 图形转换, 下载等...

Android Glide 3.7.0 源码解析(一), 准备工作

一、前言 1. 关于源码阅读 不要妄图一下子窥得全貌, 一个开源项目是由很多人同时维护, 一个人不可能一下子掌握每个细节, 可以先从一个特定流程入手, 这样会使得源码阅读事半功倍. 阅读的过程中尽量不要过分纠结主线之外的细节, 可能会给整个主线的分析带来极大难度 2. 关于Glide的使用 官方文档中文版传送门 官方文档英文版传送门 github地址 二、源代码准备...

Markdown介绍

Markdown是一种轻量级标记语言

主要内容 Markdown是什么 谁创造了它 为什么要使用它 怎么使用 谁在用 尝试一下 其它 正文 Markdown是什么 Markdown是一种轻量级标记语言,它以纯文本形式(易读、易写、易更改)编写文档,并最终以HTML格式发布。 Markdown也可以理解为将以MARKDOWN语法编写的语言转换成HTML内容的工具。 谁创造了它 它由Aaro...