2017-03-02 1 views
0

Ich habe Mühe herauszufinden, warum nur bestimmte Bilder von Firebase Storage mit SD Web Image (über FirebaseStorageUI) geladen werden. Ich habe sogar zwei Kopien des gleichen Bildes unter verschiedenen Namen, und nur eine der beiden lädt und erscheint, wenn meine Taste zugewiesen ist. Alle Bilder sind .jpg und sind unter 100kb und sind im selben/Bilder-Ordner gespeichert.Kann bestimmte Images nicht mit Fireabse Storage UI laden (SD Web Image)

Hier ist der Code, wo ich das Bild von Firebase Speicher erhalten, und weisen Sie auf eine Schaltfläche (in einer Reihe von Tasten):

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

Erhalten Sie einen Fehler oder etwas anderes? –

Antwort

0

Es scheint, von einem doppelten Variablennamen außerhalb der verursacht worden zu sein Umfang der Funktion, der zum Zeitpunkt der Zuweisung von Firebase zu meinem Array von Firebase-Referenzen führte. Die einzigen Bilder, die geladen wurden, waren diejenigen, die bereits eingelöst worden waren, bevor ich den doppelten Variablennamen erstellte. Bei einigen Fehlern der Netzwerkgeschwindigkeit konnten die Benutzerdaten ein- oder zweimal geladen werden, bevor der Variablen ein Null-Array zugewiesen wurde, und somit hatte ich zwei Bilder in bar, während alle anderen Bilder nicht geladen wurden.