0

我正在尝试解析这个 JSON 数组:

http://www.ifanatic.hu/api/get_recent_posts/?dev=1

但我得到这个错误:

    2012-07-15 22:31:59.038 JSONTest[610:f803] -[__NSCFDictionary indexOfObject:]: unrecognized selector sent to instance 0x6a92850
2012-07-15 22:31:59.040 JSONTest[610:f803] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFDictionary indexOfObject:]: unrecognized selector sent to instance 0x6a92850'
*** First throw call stack:
(0x13d7052 0x1568d0a 0x13d8ced 0x133df00 0x133dce2 0x236b 0xa23a59 0xa21e94 0xa22eb7 0xa21e4f 0xa21fd5 0x966f6a 0x3989bbd 0x3a565ea 0x3980298 0x3a5616b 0x3980137 0x13ab97f 0x130eb73 0x130e454 0x130ddb4 0x130dccb 0x12c0879 0x12c093e 0x2ea9b 0x1cb8 0x1c15)
terminate called throwing an exception

这是我的来源:

NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];

NSArray* latestPosts = [responseString JSONValue];

NSDictionary* post = [latestPosts objectAtIndex:[latestPosts indexOfObject:0]];

NSString* title = [post objectForKey:@"title"];

label.text = [NSString stringWithFormat:@"Title: %@", title];
4

1 回答 1

3

在解析 JSON 时,该 JSON 对象的根元素被转换为 NSDictionary。并且 NSDictionary 不响应

indexOfObject:

信息。您需要做的是使用:

NSDictionary *post = [[latestPosts objectForKey:@"posts"] objectAtIndex:0];

等等

于 2012-07-15T20:48:20.560 回答