Firebase 存储到 UIImageView
Posted
技术标签:
【中文标题】Firebase 存储到 UIImageView【英文标题】:Firebase Storage to UIImageView 【发布时间】:2019-01-03 20:39:41 【问题描述】:我正在尝试获取存储在 UIImageView 内的 Firebase 存储中的图像。 我有该用户在 Firebase 数据库中保存的图像的 URL,但不知道如何获取它
【问题讨论】:
阅读此答案:***.com/questions/24231680/… Loading/Downloading image from URL on Swift的可能重复 【参考方案1】:你需要为它做一个动作这个函数打开照片载体
@IBAction func selecFoto(_ sender: UIButton)
let imageController = UIImagePickerController()
imageController.delegate = self
imageController.sourceType = UIImagePickerController.SourceType.photoLibrary
//you can also set animate to false
self.present(imageController, animated: true, completion: nil)
这个函数选择图像,你可以存储在任何你想要的地方
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any])
// here you can preview the image you selected if that's the case
imageView.image = info[UIImagePickerController.InfoKey.originalImage] as? UIImage
self.dismiss(animated: true, completion: nil)
【讨论】:
【参考方案2】:import FirebaseStorage
Storage.storage().reference(forURL: yourDownloadedURL).getData(maxSize: 1048576, completion: (data, error) in
guard let imageData = data, error == nil else
return
someImageView.image = UIImage(data: imageData)
)
显然,处理错误和损坏的图像数据,可能会退回到默认图像(仅仅因为我们手头有图像数据并不能保证它会呈现完美的图像),并使用适合的最大文件大小你的申请。
【讨论】:
以上是关于Firebase 存储到 UIImageView的主要内容,如果未能解决你的问题,请参考以下文章
Android Glide 和 Firebase 存储:将连续图像从 Firebase 存储加载到 Imageview - 闪烁
Firebase 存储 - 将图像上传到 Firebase 存储并在实时数据库中创建指向该图像的链接