所以我是 Objective C 的新手,我正在尝试解析地理编码 API JSON 响应的字典表示。这是我得到的:
NSString *responseString = [request responseString];
NSDictionary *responseDict = [responseString JSONValue];
NSDictionary *results = [responseDict objectForKey:@"results"];
NSDictionary *geometry = [results objectForKey:@"geometry"];
我收到 SIGABRT 错误,指示选择器无效。我不知道如何解决这个问题,或者甚至更好,是否有另一种方法可以进行嵌套字典访问?
您可以在此处查看 json 响应:
编辑:添加了更多代码
最佳答案
您需要检查-objectForKey:
返回的对象的类。 -objectForKey:
返回一个 id
,您假设它是一个 NSDictionary
不幸的是,在您收到的响应中,“结果”将返回一个您的 JSON 解析器可能会以 NSArray
的形式返回该数组,该数组不会响应 -objectForKey:
。
关于objective-c - Objective C 嵌套字典访问无效选择器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6838623/