私は xcode が初めてで、助けが必要です。
私はこのjsonを持っています:
{
"noticias": [
{
"titulo":"teste"
}
{
"titulo":"teste 2"
}
]
}
どのように私は結果を得ましたか? 私は試した
NSDictionary *not = [noticias objectAtIndex:indexPath.row];
しかし、キー「noticias」があるため、エラーが発生しました
更新:これは、これまでに受け取った回答に基づいて試みられたコードです。私はこれを持っています:
- (void)fetchNoticias
{
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
NSData* data = [NSData dataWithContentsOfURL:
[NSURL URLWithString: @"http://www.site.com/json"]];
NSError* error;
noticias = [NSJSONSerialization JSONObjectWithData:data
options:kNilOptions
error:&error];
dispatch_async(dispatch_get_main_queue(), ^{
[self.tableView reloadData];
});
});
}
それで
- (void)viewDidLoad
{
[super viewDidLoad];
[self fetchNoticias];
}
そして私が問題を抱えている最後の
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"NoticiasCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
NSArray *noticia = [noticias objectForKey:@"noticias"];
NSDictionary *not = [noticias objectAtIndex:indexPath.row];
NSString *firstTitle = [not objectForKey:@"titulo"];
cell.textLabel.text = firstTitle;
//cell.detailTextLabel.text = subtitulo;
[cell setAccessoryType:UITableViewCellAccessoryDisclosureIndicator];
return cell;
}
インラインの問題:
NSArray *noticia = [noticias objectForKey:@"noticias"];