我在numberOfRowsInSection内调用UITableView委托的heightForRowAtIndexPath方法,但这给我带来了错误的访问错误:

- (CGFloat) tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
    ...
    NSLog(@"number of rows in section: %i", [tableView numberOfRowsInSection:[indexPath section]]);
    ...
}


有人可以告诉我这是怎么回事吗?

最佳答案

您需要在此处返回实际值。因此,不必再调用[tableView numberOfRowsInSection:[indexPath section]],只需再次执行相同的操作即可。

为了不重复代码,您可以创建一个可以在两个地方调用的辅助方法,即heightForRowAtIndexPath方法和numberOfRowsInSection方法:

- (int) myNumberOfRowsMethod{
    // Here you would usually have some underlying model
    return [self.myContactsOrWhateverArray count];
}

关于objective-c - iOS UITableView numberOfRowsInSection错误访问,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13912540/

10-10 20:39