Kingfisher 是一个轻量级的、纯 Swift 库,用于从 Web 下载和缓存图像。该项目深受流行的 SDWebImage 的启发。它为您提供了在下一个应用中使用纯 Swift 替代方案的机会。
URLSession
基于的网络。提供基本的图像处理器和过滤器。UIImageView
、NSImage
和 UIButton
提供扩展,以从 URL 直接设置图像。最简单的用例是将图像设置到使用 UIImageView
扩展的图像视图中
let url = URL(string: "url_of_your_image")
imageView.kf.setImage(with: url)
Kingfisher 将从 url
下载图像,将其发送到内存缓存和磁盘缓存,并在 imageView
中显示。当你以后使用相同的代码时,图像将从缓存中检索并立即显示。
Main development of Kingfisher is based on Swift 4. Only critical bug fixes will be applied to Kingfisher 3.x.
我们准备了一个 维基页面。在那里您可以找到大量有用的东西。
我想保持Kingfisher的轻量级。这个框架将专注于提供下载和缓存图片的简单解决方案。但这并不意味着框架不能改善。Kingfisher远非完美,所以我们将进行必要的和有用的更新,使其更好。
我们热烈欢迎任何贡献和pull请求。然而,在你计划实现某些功能或试图修复不确定性问题之前,建议先开启一个讨论。
测试图片包含在另一个项目中,以保持本项目仓库快速和精简。在你需要运行测试目标时,可以在Kingfisher根目录下运行./setup.sh
来克隆测试图片。如果你能保证你的pull请求构建并所有测试通过,我们会非常感激。:)
Kingfisher的标志灵感来源于七巧板,一个由七个平面形状组成的中国传统拼图玩具。我相信她是一只翠鸟,而不是燕雀,但有人坚持认为她是一只鸽子。我想给她起个名字。嘿,伙计们,你们有什么建议吗?
在Twitter或新浪微博上关注和联系我。如果你发现了一个问题,只需提交工单。我们也热烈欢迎pull请求。
本项目的存在离不开所有贡献者。 [贡献].
感谢所有赞助者!
通过成为赞助商来支持本项目。你的标志将显示在此处,并带有一个链接到你的网站。 [成为赞助商]
Kingfisher在MIT许可下发布。有关详细信息,请参阅LICENSE。