вы загружаете imageData непосредственно из firebase в вашем вопросе.Вместо использования getData
вам нужно будет использовать метод downloadURL
.Например:
for x in image_list {
let storageRef = storage.child("images/\(x).jpg")
//then instead of downloading data download the corresponding URL
storageRef.downloadURL { url, error in
if let error = error {
} else {
//make your imageArray to hold URL rather then images directly
imagesArray.append(url)
}
}
}
//////This is were you would use those url////////
let url = imageArray.first!
imageView.sd_setImage(with: url, completed: nil)
Самая важная часть здесь - это URL-адрес загрузки, а не данные изображения.И всякий раз, когда вы устанавливаете URL-адрес изображения в imageView, библиотека SDWebImage будет кешировать его и отображать, если он уже кеширован