2017-03-02 50 views
0

我在努力弄清楚为什么只有某些图像使用SD Web图像(通过FirebaseStorageUI)从Firebase存储加载。我甚至有不同名称下的相同图像的两个副本,并且只有两个负载中的一个负载,并在分配给我的按钮时出现。所有图像都是.jpg并且小于100kb并存储在相同的/ images文件夹中。无法使用Firebse存储用户界面(SD网络图像)加载某些图像

这里就是我从火力地堡存储的图像,并将其分配给一个按钮的代码(在按钮的排列):

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) 
+1

您是否收到错误或其他内容? –

回答

0

它似乎已经被外面的重名变量引起的该函数的作用域导致我的Firebase引用数组在Firebase的赋值时为零。加载的唯一图像是在创建重复变量名称之前已经兑现的图像。由于某种网络速度的侥幸,用户数据在变量被分配了一个nil数组之前已经加载了一次或两次,因此我有两张现金图像,而其他所有图像都不会加载。