В моем приложении я храню изображения в Firebase Storage, а также url
в Cloud Firestore. Теперь, когда я пытаюсь получить это изображение, я использую Kingfisher, но я думаю, что неправильно понимаю, как работает Kingfisher. Это мой код:
let imageView = UIImageView()
imageView.image = UIImage()
if let imageUrl = URL(string: imageUrlString) {
let resource = ImageResource(downloadURL: imageUrl)
imageView.kf.setImage(with: resource) { (result) in
switch result {
case .success(_):
print("success")
case .failure(_):
print("fail")
}
}
}
dataSourceArrayWithWishes[wishIDX].wishes.append(image: imageView.image!)
Что я хотел бы здесь, так это то, что если imageUrl
правильный, получить его, а затем сохранить в dataSourceArrayWithWishes
как UIImage
. Если нет, то просто сохраните пустой UIImage
.
Однако, когда задано допустимое значение imageUrl
, происходит сбой, поскольку imageView.image!
не должно быть нулевым.
Может кто-нибудь помочь мне здесь?