我正在努力弄清楚为什么仅使用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/

10-14 21:51
查看更多