如何同时在tableview上显示关键字? 在这里我可以显示价值。 我想在cell.textLabel setText上显示密钥:@“A”
请..
。 。
这是我的代码 谢谢 非常感谢你。 NSURLRequest * request = [NSURLRequest requestWithURL:[NSURL URLWithString:@“https://reserve.cdn-apple.com/AU/en_AU/reserve/iPhone/availability.json”]];
NSData *response = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableLeaves error:&error];
_listarr = [[NSMutableArray alloc]init];
id list = [dic objectForKey:self.strStore];
if ([list isKindOfClass:[NSDictionary class]]) {
NSDictionary *dictionary = (NSDictionary *)list;
NSArray *keys = [list allKeys];
for (NSString *key in keys) {
NSString *teamname = (NSString *)[dictionary objectForKey:key];
NSLog(@"",key);
[_listarr addObject:[NSString stringWithFormat:@"%@", teamname]];
}
} else {
// Do some error handling
}
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
//必须返回与数据容器一样的数量,否则会报数据越界错
return [_listarr count];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"thisCell";
UITableViewCell *cell;
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
[cell.textLabel setText:@"A"];
[cell.detailTextLabel setText:[_listarr objectAtIndex:indexPath.row]];
return cell;
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
return 1;
}
@end
答案 0 :(得分:0)
使用NSDictionary的allKeysForObject:
查找与对象匹配的键。对象与isEqual:
进行比较,并且应该匹配简单的NSStrings。
如果数组太大,这可能会很慢,在这种情况下,您可能会创建另一个数组,其中包含可以快速索引的键值。
答案 1 :(得分:0)
嗨,这段代码会给你我想要的东西..
NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableLeaves error:&error];
NSArray *array = [dic allKeys];
NSArray *temparray = [dic objectsForKeys:array notFoundMarker:[NSNull null]];