我有多个单元格,目前保存着来自 Firebase 的不同照片。每次用户加载这些图像然后滚动时,它们都会被重新下载,这会快速消耗数据。我发现这与任何拥有计量数据计划的用户有关。我能做些什么来解决这个问题? Firebase 是否提供任何选项来缓存下载的图像?
这就是我目前将图像调用到单元格中的方式:
if let imageName = post["image"] as? String {
let imageRef = FIRStorage.storage().reference().child("images/\(imageName)")
imageRef.data(withMaxSize: 25 * 1024 * 1024, completion: { (data, error) -> Void in if error == nil {
let image = UIImage(data: data!)
cell.postImageView.image = image
最佳答案
使用Kingfisher缓存图像。它很轻,非常容易使用。只需从 firebase 传递您的 url,它就会自动缓存它。
let url = URL(string: "url_of_your_image")
imageView.kf.setImage(with: url)
关于ios - 从 Firebase 缓存图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42429247/