首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Kingfisher源码分析
李坤
创建于2021-05-11
订阅专栏
Kingfisher源码分析
等 7 人订阅
共8篇文章
创建于2021-05-11
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
李坤
3年前
iOS
阅读Kingfisher源码的一些收获
1. 命名空间的使用 Kingfisher命名空间有2种方式,一种是使用协议加上包装器,另一种是把类型定义在枚举里。参考协议KingfisherCompatible和类型public enum MemoryStorage {},一个是空协议,扩展了一个kf计算属性,但kf里又有…
2164
15
3
李坤
3年前
iOS
Kingfisher源码解析之使用
1. 基本使用 Kingfisher中内置的ImageResource和URL实现了Resource协议,ImageResource和URL的区别是ImageResource可自定义cacheKey。 Kingfisher内置了LocalFileImageDataProvide…
6005
29
1
李坤
3年前
iOS
Kingfisher源码解析之ImagePrefetcher
先来看下stop函数的实现,实现比较简单,在预加载的队列里异步的执行把标志位stopped设置为true,并且取消当前所有未完成的下载任务,看起来很简单。 对于情况1和情况2都是合理的,并且是绝大部分都会是情况1和情况2,对于情况3,调用stop时并没有真正的去停止,但是这种情…
1734
3
评论
李坤
3年前
iOS
Kingfisher源码解析之Processor和CacheSerializer
Kingfisher中Processor是一个协议,定义了对原始数据进行加工处理转换成UIImage的能力(Kingfisher缓存的是处理成功之后的UIImage,根据options的值来决定是否缓存原始数据)。 这里的原始数据是指ImageProcessItem,它是一个枚…
2283
4
评论
李坤
3年前
iOS
Kingfisher源码解析之ImageCache
由上面我们可以看出,Kingfisher中内存缓存是用NSCache实现的,NSCache是一个类似于Dictionary的类,拥有相似的API,不过区别于Dictionary的是,NSCache是线程安全的,并且提供了设置最大缓存个数和最大缓存大小的配置,Backend就是通…
4601
8
评论
李坤
3年前
iOS
Kingfisher源码解析之加载流程
1. 当我们调用imageView.kf.setImage()之后发生了什么? 2. Kingfisher中图片加载的流程是什么? 3. Kingfisher是如何缓存图片的? 4. Kingfisher是如何查找缓存的?
1629
6
2
李坤
3年前
iOS
Kingfisher源码解析之加载动图
到现在为止,我们还是没有看到AnimatedImageView是如何展示GIF图的。接着往下看 AnimatedImageView重写了image的didSet,而上面的方法返回后,会对imageView.image进行赋值,正好触发了image的didSet,在这里开启了一个…
4478
8
9
李坤
3年前
iOS
Kingfisher源码解析之Options解释
Kingfisher源码解析系列,由于水平有限,哪里有错,肯请不吝赐教Kingfisher源码解析之使用Kingfisher源码解析之Options解释Kingfisher源码解析之加载流程Kingf
2510
6
评论