【发布时间】:2017-11-18 06:47:58
【问题描述】:
我一直在开发一个照片存储应用程序,它从我的 Firebase 数据库中获取图像链接,将它们按顺序存储在一个数组中,然后运行该数组,使用数组中的链接从相应的 Firebase 存储中获取图像.
但是,即使代码按顺序通过链接运行,getData 函数也会无序加载图像。我不确定为什么会发生这种情况,尽管我最初的想法是图像按大小顺序加载/加载时间最短。这是我的代码。
for link in Constants.officialLinksArray {
let storage = Storage.storage().reference(forURL: link)
// Download the data, assuming a max size of 1MB (you can change this as necessary)
storage.getData(maxSize: 10 * 1024 * 1024) { (data, error) -> Void in
// Create a UIImage, add it to the array
if let error = error {
print(error)
} else {
//print(self.imageCount)
let loadedImage = UIImage(data: data!)
self.photoArray.append(loadedImage!)
Constants.officialPhotoArray = self.photoArray
self.buttonArray.append(self.photoArray.count)
self.collectionView.reloadData()
//print(self.photoArray)
}
}
}
感谢任何帮助。谢谢!
【问题讨论】:
-
不要在此处下载图像,而是在 cellforrow 中异步执行此操作,有关更多信息,请参阅:stackoverflow.com/questions/24231680/…
标签: ios swift firebase firebase-storage