mam bardzo prosty przykład tego, co chciałbym zrobićSwift - Błąd dostępu do danych ze słownika z Array słowników
private var data = [String: [[String: String]]]()
override func viewDidLoad() {
super.viewDidLoad()
let dict = ["Key": "Value"]
data["Blah"] = [dict, dict]
}
@IBAction func buttonTap(sender: AnyObject) {
let array = data["Blah"]
let dict = array[0] //<---- error here
println(dict["Key"])
}
Zasadniczo mam słownika, którego wartości zawierają tablicę [ciąg: String] słowniki. Wprowadzam do niego dane, ale kiedy wchodzę, aby uzyskać dostęp do danych, pojawia się ten błąd:
Cannot subscript a value of type '[([String : String])]?' with an index of type 'Int'
Proszę dać mi znać, co robię źle.
'dane [ "Blah"]' Zwraca * opcjonalnie * i należy odwinąć. - To musiało zostać odebrane przed ... –
Tak, przykro mi, to było oczywiste, gdy tylko na to spojrzę. Myślałem, że to problem z szybkim działaniem zagnieżdżonych obiektów, więc moje wyszukiwania pojawiły się puste. Dziękuję Ci! –
Próbowałem zamknąć jako duplikat, ale jeśli wyszukasz ten konkretny komunikat o błędzie, nie ma żadnych odniesień. Zostawię to tak, jakby to mogło pomóc komuś, kto przeoczył oczywiste "?" Jak ja zrobiłem. –