2016-07-25 10 views
-1

ich JSON neu bin und wie diese in einer Schleife durch meine JSON Array versuchtIOS JSON - Getting unerwartete Ergebnisse in der Konsole

for (NSDictionary *dict in self.contentArray) { 
     NSLog(@"%@", dict); 
} 

Aber halten diese Art von Inhalten bekommen statt des tatsächlichen Wörterbuch in der Konsole :

<Content: 0x7fd9b1037950> 

Hier ist mein Code, dass ich das Array verwendet, um:

// Create a new array to hold the locations 
    NSMutableArray *locations = [[NSMutableArray alloc] init]; 

    // Get an array of dictionaries with the key "locations" 
    NSArray *array = [jsonDictionary objectForKey:@"data"]; 
    // Iterate through the array of dictionaries 
    for(NSDictionary *dict in array) { 
     // Create a new Location object for each one and initialise it with information in the dictionary 
     Content *content = [[Content alloc] initWithJSONDictionary:dict]; 
     // Add the Location object to the array 
     [locations addObject: content]; 
    } 
+0

Weil das ist, was tatsächlich in Ihrem Array ist. Wie erstellen Sie das Array? – dan

+0

Bearbeiten Sie den Code in Ihre Frage, damit er lesbar ist. – dan

+0

Und Sie bekommen das erwartete Verhalten, was Sie sonst noch erwarten? Sie speichern ein Inhaltsobjekt und erhalten es. – ldindu

Antwort

1

Einer von zwei Dinge, die Sie kann tun, um das gewünschte Verhalten zu erreichen.

  1. überschreiben Sie die folgende Methode in Ihrem Content-Klasse

    (NSString *)description; 
    

    Und Format und gibt die Zeichenfolge als Sie, wenn Instanz Inhalt wollten NSLog gedruckt wird.

  2. Speichern Sie das Diktat sofort in Ihrem Array, ohne es zu umschließen. Das Inhaltsobjekt und das Wörterbuch werden dann wie erwartet gedruckt.

+0

Ich denke, die OP wollte JSON-Ausgabe, also gibt es bessere Möglichkeiten als diese. – Droppy