JSON Parsen iOS-Array von Wörterbüchern untersucht und in array zeigt nur Letzte Objekt in tableview
Habe ich ein JSON-array von Wörterbüchern, die ich analysieren. Mein problem ist, wo ich will, um alle Datensätze anzuzeigen, die passen zu meinem gewünschten Schlüssel-Wert-paar (key-name) innerhalb dem array, ich bin nur die Anzeige die Letzte in meinem tableview. Es ist fast 4 Uhr und ich gehe um im Kreis seit 10pm, so dass jede Hilfe wäre sehr geschätzt, wie ich bin, mit Blick etwas. Danke!
NSArray *jsonDataArray = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableContainers error:&error];
self.someArray = [[NSMutableArray alloc]init];
for (NSMutableDictionary *dictionary in jsonDataArray)
{
NSMutableArray* Response_array = [dictionary objectForKey:@"loans"];
NSLog(@"Array: %@", Response_array);
NSDictionary *dict = [Response_array objectAtIndex:0];
NSLog(@"dict is %@",dict);
self.someMutableArray = [dict objectForKey:@"name"];
NSLog(@"what is name %@",self.someMutableArray);
}
und ich versuchte:
NSArray *jsonDataArray = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableContainers error:&error];
for ( int i = 0 ; i < jsonDataArray.count ; i++ )
{
self.someDictionary = [[jsonDataArray objectAtIndex:i] objectForKey:@"loans"];
self.someMutableArray = [self.someDictionary valueForKey:@"name"];
NSLog(@"MutableArray inside is %@", self.someMutableArray);
}
NSLog(@"MutableArray outside is %@",self.someMutableArray);
Bei meinem letzten Versuch zog ich die Lage des valueForKey:@"name":
NSArray *jsonDataArray = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableContainers error:&error];
self.someMutableArray = [NSMutableArray array];
for ( int i = 0 ; i < jsonDataArray.count ; i++ )
{
self.someMutableArray = [[jsonDataArray objectAtIndex:i] objectForKey:@"loans"];
}
NSLog(@"someMutableArray outside is %@",self.someMutableArray);
Dann in cellForRowAtIndexPath meiner tableview habe ich:
NSDictionary *dict2 = [self.someMutableArray objectAtIndex:indexPath.row];
NSLog(@"what is dict2 %@", dict2);
cell.textLabel.text = [dict2 valueForKey:@"name"];
Hier ist das setup meines JSON:
[
-{
id: 285,
name: name 1,
-loans: [
-{
id: 42,
name: "Shark"
}
]
},
-{
id: 286,
name: name 2,
-loans: [
-{
id: 50,
name: "Flipper"
}
]
}
]
Bitte posten Sie Ihre json
InformationsquelleAutor myData | 2014-01-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Warum sind Sie für eine Schleife wenn Sie bereits Sie haben das Array? Nur weisen Sie Ihre array mit JSON-Antwort
diesem array werden Ihrer Datenquelle, so gibt die Anzahl von Delegierten und in Sie rowAtIndexPath
Für benutzerdefinierte Zelle zu tun, wie
Ich habe nicht Sie?
Wo soll ich den Wert "Shark" und "Flipper" zu zeigen, bis in meine Tabelle für mein JSON-Beispiel, dein code gibt mir "name 1" und "name 2"
Sie können Ihren Schlüssel und die einfachen habe ich aktualisiert meine Antwort und wenn Sie wollen, um zu zeigen, mehr label dann erstellen Sie eine benutzerdefinierte Zelle, und führen diese
InformationsquelleAutor Retro
Aus meinem Beispiel:
Meine JSON-Datei:
Meine Umsetzung:
//Sicher, Sie werden die Logik der Arbeit zum Lesen bestimmten Objekts von Schlüsseln und Werten.
//Vor allem, diesen code zu vermeiden, statische Werte wie
objectAtIndex:4
.InformationsquelleAutor Mohd Sadham
Hoffe, dies hilft Ihnen,
InformationsquelleAutor Roby
InformationsquelleAutor Hetal