0

我有一个循环,它解析从远程服务器返回的 JSON,我能够循环遍历它并获取值,但我不确定如何使用返回的数据设置我的 UITableView。

如何重置 UITableView 已经认为它将拥有的预期行数?我如何实际设置这些值?

谢谢!

4

2 回答 2

2

将数据存储在数组中。然后在完成数据解析后重新加载表,如下所示:

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    // when the array is empty, this will just return 0 and your table will 
    // be empty until your data is done downloading
    return [myArray count];
}

在解析数据的方法中:

-(void)parseFinished {
    // once the data finished downloading and parsing:
    [self.tableView reloadData];
}

要知道您需要将哪个对象传递给视图控制器或对数据执行任何其他操作:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    SomeViewController *viewController = [[SomeViewController alloc] initObject:[myArray objectAtIndexPath:indexPath]];
    [self.navigationController pushViewController:viewController animated:YES];
}
于 2012-08-01T19:15:28.340 回答
1

对于你问题的第二部分,你想要......

- (void)tableView:(UITableView *) didSelectRowAtIndexPath:(NSIndexPath *)path
{
    NSUInteger column = path.column;
    NSUInteger row = path.row;

    //The row and/or column values should be useful in accessing your data source array.
}
于 2012-08-01T19:20:37.690 回答