我有一个看起来像这样的json响应:
{
"status": "success",
"status_code": 200,
"active": {
"owned": [
{
"id": "1",
"name": "Chd Home",
"type": "home",
},
...
],
"shared": [
{
"id": "3",
"name": "Ram's home",
"type": "home",
},
...
]
},
"deactivated": {
"owned": [
{
"id": "2",
"name": "Home",
"type": "home",
}
]
}
我在这里遵循Ray Wanderlich的教程:http://www.raywenderlich.com/5492/working-with-json-in-ios-5,这部分代码,特别是:
- (void)fetchedData:(NSData *)responseData {
NSError* error;
NSDictionary* json = [NSJSONSerialization
JSONObjectWithData:responseData //1
options:kNilOptions
error:&error];
NSArray* latest = [json objectForKey:@"active"]; //2
NSLog(@"items: %@", latest); //3
}
现在,当我想要一个对象作为键“ Activity ”时,我使用了此
NSArray* latest = [json objectForKey:@"active"];
并获取了最新数组中的数据,但是当我只希望下的对象找到了时,我使用了此NSArray* latest = [json objectForKey:@"found"];
,但最新内容为(null )我在这里想念什么吗?如何访问json数组的子对象?喜欢在这种情况下拥有和共享。继续前进,我想为 active>拥有的, active>共享的,停用>拥有的创建不同的对象,等等。
谢谢阅读。
最佳答案
您需要在json数据字典的层次结构中更深入地获取数据。
尝试使用此[[json objectForKey:@"active"] objectForKey:@"owned"]
获取 Activity 数据和拥有数据。就像这样,您可以取消激活
关于ios - iOS 7:从json响应中选择特定对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22436535/