【问题标题】:How to fetch data from JSON and show it in table cell view [closed]如何从 JSON 中获取数据并将其显示在表格单元格视图中 [关闭]
【发布时间】:2015-02-17 00:03:12
【问题描述】:
这是我从 web 服务返回的 Json。
如何获取手表 id 的数据并将其显示在表格视图单元格中?
[{"0":"17","watch_id":"17","1":"127","msg_id":"127","2":"u2a","type":" u2a","3":"17","4":"333333","gcmid":"333333","5":"Chhh","message":"Chhh","6":"1418887791" ,"add_time":"1418887791"}]
【问题讨论】:
标签:
ios
objective-c
iphone
xcode
【解决方案1】:
试试这个[[yourArray objectAtIndex:indexPath.row] objectForKey:@"msg_id"]; 你将能够检索存储在 msg_id 键中的值
【解决方案2】:
下面一行是获取响应数据
id objects = [NSJSONSerialization JSONObjectWithData:responseData
options:NSJSONReadingAllowFragments
error:&deserializingError];
以下代码用于从响应中获取 JSON 数据
for (NSDictionary *dictTemp in arr) {
NSString *watchID = [dictTemp objectForKey:@"watch_id"];
NSString *msgID = [dictTemp objectForKey:@"msg_id"];
NSString *type = [dictTemp objectForKey:@"type"];
NSString *gcmID = [dictTemp objectForKey:@"gcmid"];
NSString *msg = [dictTemp objectForKey:@"message"];
NSString *time = [dictTemp objectForKey:@"add_time"];
}
【解决方案3】:
当您不知道自己的反应如何时,您可以使用http://json.parser.online.fr/*之类的网站
哪种格式的 JSON 响应非常可读。
从您的回复中我可以看到,
回复形式为NSArray,包含NSDictionary。
所以你可以像这样访问你的回复,
NSArray *watches = response;
NSLog(@"%@", [[watches firstObject] valueForKey:@"watch_id"]);
要迭代数组中的每个字典,可以使用循环,像这样,
NSArray *watches = response;
for(NSDictionary *watch in watches) {
NSLog(@"%@", [watch valueForKey:@"watch_id"]);
}
*有很多可用的网站 - Google,JSON format online。