我正在努力弄清楚为什么仅使用SD Web Image(通过FirebaseStorageUI)从Firebase Storage中加载某些图像。我什至有相同名称的两个副本使用不同的名称,并且只有两个负载之一,并且在分配给我的按钮时出现。所有图像均为.jpg,并且小于100kb,并存储在同一/ images文件夹中。
这是我从Firebase存储中获取图像并将其分配给按钮(在按钮数组中)的代码:
let imagename = "gs://xxxxxx.appspot.com/images/bruce.jpg"
let reference = FIRStorage.storage().reference(forURL: imagename)
if iDs != nil {
for i in 0..<iDs!.count {
let storageImage = UIImageView()
let placeholderImage = UIImage(named: "fong")
// Load the image using SDWebImage and assign to button
storageImage.sd_setImage(with: reference, placeholderImage: placeholderImage)
self.arbtrButtons[i].setImage(storageImage.image, for: .normal)
最佳答案
这似乎是由于函数范围之外的重复变量名引起的,这导致我从Firebase分配时,我的firebase引用数组为nil。加载的唯一图像是在创建重复的变量名称之前已经兑现的图像。由于某种网络速度,用户数据在为变量分配了nil数组之前已经成功加载了一次或两次,因此我拥有两张现金映像,而其他所有映像均无法加载。
关于ios - 无法使用Firebase存储UI加载某些图像(SD Web图像),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42544736/