繁体   English   中英

如何将图像从Firebase下载到Swift,然后更快地在UIImageView中显示?

[英]How can I download an image from Firebase to Swift and then display it in a UIImageView more quickly?

我正在将图像从Firebase下载到Swift(大多数大约5 MB),然后在UIImageView中显示它们。 每个视图仅出现一次,因此无需将其缓存以供以后查看。 大多数情况下,它们需要一两秒钟才能加载。 有什么方法可以缩短时间?

我的代码:

Database.database().reference().child("movies").child(movieNumString).observeSingleEvent(of: .value, with: { (snapshot) in
if let dictionary = snapshot.value as? [String: AnyObject] {
    let UrlString: String? = ((dictionary["posterPhotoURL"] as? String))
    let Url = URL(string: (UrlString)!)

    self.moviePosterImageView.sd_setImage(with: Url, placeholderImage: #imageLiteral(resourceName: "PImage"), options: [], completed: { (image, error, cacheType, url) in
            self.moviePosterImageView.image = image
    })
}

请参阅堆栈溢出准则以备将来使用。

最重要的是,您应该担心图像的数据和大小,随着减小图像的大小,下载图像所需的时间将减少。 尝试将大小减小到一些kb。

在Firebase中,您可以具有在服务器端运行的功能,例如,您可以对图像进行大小调整。 有关所有功能示例和调整大小的信息,请参见此处是使用Sharp软件包的示例。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM