Ich verwende Firebase für iOS-Bibliothek, um ein Array von untergeordneten Elementen aus der Datenbank zu laden.Wie kann ich vom Swift-Debugger auf verschachtelte Objekteigenschaften zugreifen
Ich bin Speichern der snap.value
in einem NSMutableDictionary
wie folgt:
var list=NSMutableDictionary()
let students = FIRDatabase.database().reference().child("students")
students.observe(.childAdded) { (snap:FIRDataSnapshot) in
self.list[snap.key] = snap.value
}
Als ich in der letzten Zeile einen Haltepunkt setzen, ich den Inhalt list
Variable untersuchen kann, und es enthält erfolgreich alle 8 Kinder von Feuerbasis .
vom Debugger, habe ich versucht, dies:
(lidb) po list.count
>> 8
Also habe ich versucht, den Namen/Alter von Element abzurufen 3 durch Eingabe von:
(lidb) po list[3]
>> nil
(lidb) po list[3]["value"]["name"]
>> error: <EXPR>:3:8: error: type 'Any?' has no subscript members
(lldb) po (list[3] as? Dictionary<String,Any?>)
>> nil
(lldb) po (list[3] as? Dictionary<String,Any?>)["value"]
>> nil
Was soll ich tun falsch?
aber ich möchte alle Elemente im Wörterbuch durchlaufen, ohne den Schlüssel verwenden zu müssen. Gibt es einen Weg? – Ahmad
Wenn ich mich richtig erinnere, sollte dies mit 'for (key, value) in dict) {...} möglich sein – DMan