【发布时间】:2019-09-03 20:10:09
【问题描述】:
我正在尝试检索从数据库中保存的图片(在这种情况下,我硬编码了我想要从数据库中获取的确切图片)。我启动了两个UIImage 变量:imageView 和rawImage。 imageView 使用来自FirebaseUI 的SDWebImage 加载图像,但我不知道如何将其保存到 UIImage 数组中。
rawImage 正在从 Firebase 的确切图像的路径中获取数据。我正在将它转换为 UIImage,但是当我想将它附加到我的 UIImage 数组时,应用程序崩溃了。
class GalleryViewController:UIViewController{
@IBOutlet weak var imageView: UIImageView!
@IBOutlet weak var rawImage: UIImageView!
override func viewDidLoad() {
super.viewDidLoad()
view.addVerticalGradientLayer(topColor: primaryColor, bottomColor: secondaryColor)
self.tabBarController?.tabBar.isHidden = true
retrievePicture()
}
func retrievePicture()
{
guard let user_email = Auth.auth().currentUser?.email else { return }
let storageRef = Storage.storage().reference()
// Reference to an image file in Firebase Storage
let reference = storageRef.child("\(user_email)").child("/top").child("1.jpg")
// UIImageView in your ViewController
let imageView: UIImageView = self.imageView
// Placeholder image
let placeholderImage = UIImage(named: "placeholder.jpg")
//UploadViewController.Clothing.top_images.append(<#UIImage#>)
// Load the image using SDWebImage
imageView.sd_setImage(with: reference, placeholderImage: placeholderImage)
// this is the code for the rawImage portion I described above
reference.getData(maxSize: 1 * 1024 * 1024) { data, error in
if let error = error {
print("Error \(error)")
} else {
let picture = UIImage(data: data!)
UploadViewController.Clothing.top_images.append(picture!)
}
}
// loading the image to the rawImage imageview
rawImage.image = UploadViewController.Clothing.top_images[0]
}
}
【问题讨论】:
标签: arrays swift firebase firebase-realtime-database firebase-authentication