Ich habe versucht, die letzten Werte in einer Firebase-Referenz innerhalb von Xcode mit swift zu erfassen und dann diese zehn Werte zehn verschiedenen UIButton-Titeln zuzuordnen. Ich habe viele Dinge ausprobiert, aber meistens passiert nichts oder ich stürze ab. Ich habe Breakpoints ausprobiert, aber weil der Code so klein ist und es keine Run0-Time-Fehler oder Warnungen gibt, hat es mehr damit zu tun, wie ich es mache (das Konzept). Jeder Rat wäre großartig und ich hoffe, dass dies mit ihren frühen iOS- und Firebase-Tagen zukünftigen Ansichten hilft. Vielen Dank für Ihre Zeit und Fehler!Ergreifung der letzten zehn Firebase-Werte und Zuordnung zu zehn UIButton-Titeln
Im Folgenden meine letzte Code, der einen Absturz auslöst, wenn die Ansicht Lasten:
// import UIKit (already imported the module)
// UIButtons deck1 - deck10 are defined
// firebase reference refName is created
override func viewDidLoad() {
super.viewDidLoad()
var titleArray = [String]()
var buttonArray : [UIButton:String] = [ // creating a dictionary to make a link from UIButtons to a String that will contain their title
deck1 : "",
deck2 : "",
deck3 : "",
deck4 : "",
deck5 : "",
deck6 : "",
deck7 : "",
deck8 : "",
deck9 : "",
deck10 : ""
]
refName.queryLimitedToLast(10).observeEventType(.Value, withBlock: { snapshot in // getting last
for child in snapshot.children { // getting the last ten values
let title = child.value as String // assigning each value to a variable
titleArray.append(title) // adding each variable to an array of values as strings
}
buttonArray[self.deck1] = titleArray[0] // assigning each value that is a string in the array 'titleArray' to a UIButton key
buttonArray[self.deck2] = titleArray[1]
buttonArray[self.deck3] = titleArray[2]
buttonArray[self.deck4] = titleArray[3]
buttonArray[self.deck5] = titleArray[4]
buttonArray[self.deck6] = titleArray[5]
buttonArray[self.deck7] = titleArray[6]
buttonArray[self.deck8] = titleArray[7]
buttonArray[self.deck9] = titleArray[8]
buttonArray[self.deck10] = titleArray[9]
self.deck1.setTitle(buttonArray[self.deck1], forState: UIControlState.Normal)
self.deck2.setTitle(buttonArray[self.deck2], forState: UIControlState.Normal)
self.deck3.setTitle(buttonArray[self.deck3], forState: UIControlState.Normal)
self.deck4.setTitle(buttonArray[self.deck4], forState: UIControlState.Normal)
self.deck5.setTitle(buttonArray[self.deck5], forState: UIControlState.Normal)
self.deck6.setTitle(buttonArray[self.deck6], forState: UIControlState.Normal)
self.deck7.setTitle(buttonArray[self.deck7], forState: UIControlState.Normal)
self.deck8.setTitle(buttonArray[self.deck8], forState: UIControlState.Normal)
self.deck9.setTitle(buttonArray[self.deck9], forState: UIControlState.Normal)
self.deck10.setTitle(buttonArray[self.deck10], forState: UIControlState.Normal)
})
}
Also im Grunde eine einfachere Version meines Codes, aber nur schneiden, was nicht benötigt wird, kann funktionieren? Ich werde es versuchen. Danke. – EQOxx123
nicht sicher, was Ihr Fehlercode auch ist. posten Sie Ihren Fehler? – Chris
Es gibt keine Laufzeitfehler, aber ein kleiner Absturz beim Laden der App. in einer Ausgabe dazu ist die textLabel der ten Schaltfläche immer noch auf den Standardwert None eingestellt – EQOxx123