/ / AnyObject do string w swift - ios, json, core-data, swift, nsarray

AnyObject do ciągów w swift - ios, json, core-data, swift, nsarray

Utknąłem na tym kodzie! Chcę usunąć opcjonalne opcje. Jak najlepiej to zrobić? Próbowałem zmienić AnyObject na NSString, ale nie wiem jak.

Jaki jest najlepszy sposób na zrobienie tego?

A moje drugie pytanie brzmi: jak przechowywać to w podstawowych danych? Czy są w tym fajne ramy?

Alamofire.request(.GET, urlDb)
.responseJSON { (request, response, json, error) in
println(error)
//println(json)

if let contactGroups : AnyObject! = json{
//println("Contact groepen")
var contactGroups = contactGroups["contact_groups"] as NSArray

for cG in contactGroups {
println(cG["group_id"]!)
//println(cG["contact_id"]!)
}
}

if let contacts : AnyObject = json{
//println(contacts["contacts"])
println("Contacten")
var contacts = contacts["contacts"] as NSArray

for c in contacts{
println(c["id"])
println(c["name"])
}
}
}

To jest dziennik konsoli

 nil
Optional(1)
Optional(2)
Contacten
Optional(1)
Optional(Dirk Sierd de Vries)

Mam nadzieję, że pomożecie mi w moim szkolnym projekcie: D

Odpowiedzi:

1 dla odpowiedzi № 1

Zmodyfikuj dla pętli jak poniżej:

for c in contacts {
println(c["id"]  as NSString)
println(c["name"] as NSString)
}

Wyjaśnienie:

W Swift musisz określić obiekt do określonego typu. Jeśli nie, to domyślnie pokazujeOptional słowo kluczowe. Tutaj wartości klucza słownika są drukowane bezpośrednio w dzienniku i nie określono tego, jaki typ wartości jest przechowywany w słowniku.

Informacje o zapisywaniu podstawowych danych:

Nie, nie ma żadnych fajnych ram, które mogłyby zapisywać dane w podstawowych danych. Musisz to zrobić samodzielnie. Poniższy link najlepiej jest użyć, aby zacząć się tego uczyć.

Dane Swift + Core