/ iOS

通过 Kingfisher Extension 自定义图片处理

惯例先上源码:GitHub源码

Kingfisher进行了简单的封装,

好处:

1. 在用`pod`管理依赖的情况下,不需要到处`import Kingfisher`。
2. 代码较为集中,方便管理。若以后需要替换`Kingfisher`也很方便。

还可以很集中地添加默认值,在我自己的项目中,全部图片都是默认

let defaultOptions: KingfisherOptionsInfo = [
    .Options([.BackgroundDecode, .LowPriority]),
    .Transition(ImageTransition.Fade(0.55))
]

如果需要对Kingfisher下载下来的图片需要作特殊处理,例如作圆角处理,但又不想保存两份,怎么办?
在这个Extension中,我简单写了个圆角处理的方法,如果有兴趣,可以看看源码。

原理:直接调用KingfisherManager中的downloadImageWithURL,得到图片,对图片进行处理后再调用KingfisherManager中的storeImage来保存图片。

    cell.imageView.kfe_setRoundImageWithURLString(avatarURLStrings[indexPath.row], cornerRadiusRatio: 0.25)

通过 Kingfisher Extension 自定义图片处理
Share this