This question already has answers here:
Difference between UITableViewDelegate and UITableViewDatasource

(4 个回答)


5年前关闭。




我发现这个方法是一个 UITableView 委托(delegate)方法:
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
  return 20;
}

我真的很困惑,为什么它不是数据源方法?

最佳答案

这个答案很好地概述了 UITableViewDataSourceUITableViewDelegate 方法之间的粗略划分:Difference between UITableViewDelegate and UITableViewDatasource

在这种情况下,heightForRowAtIndexPath 与 UITableView 的布局有关而不是与单个单元格中的内容有关,因此它与 Delegate 方法分组(尽管单元格的内容和高度通常可以非常相关)

关于ios - 为什么 -tableView :heightForRowAtIndexPath: is a delegate method instead of a data source method?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34193380/

10-10 20:34