异常(exception):



代码:

CGRect rect = [tableView rectForRowAtIndexPath:[NSIndexPath indexPathForRow:i inSection:0]];

使固定:
if ([tableView numberOfRowsInSection:0] <= i) {
    return;
}

也许存在更好的方法

最佳答案

通常,rectForRowAtIndexPath可以按文档状态处理无效的indexPath,但是在IOS 7.1中,它不能正确处理无效的indexPath。因此,传递nil会导致崩溃并获取错误消息:



总之,对于rectForRowAtIndexPath,需要手动执行nil检查。

10-06 06:45