0

UITableView 如何管理可变高度的单元格?它要求加载每个单元格/行的高度,但进一步移动它是如何“内部”的......

  1. 计算每个单元格的 y 原点。一个接一个地计算不是问题。
  2. 在给定任意 contentOffset 的情况下,确定哪个单元格可能位于矩形中。无论表视图中的行数如何,它如何维护其数据结构以执行一些快速计算,以及如何维护它。
  3. 它如何在没有太多开销的情况下管理行的添加和删除并更新其数据结构。

有人可以阐明这一点...谢谢

4

2 回答 2

0

基本上你需要小心使用高度可变的单元格,因为它可能是一个性能问题。可以为当前不可见的单元格调用 heightForRowAtIndexPath 方法,这在具有大量内容的表格中可能是一个非常大的数字。计算原点就像你想象的那样工作 - 它需要知道它计算原点的所有单元格的高度。

于 2013-10-18T10:51:38.913 回答
0

对于单元格编辑,您需要添加此

- (UITableViewCellEditingStyle) tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
{
    return UITableViewCellEditingStyleDelete;
}

当您执行删除操作时,它会从您在方法中使用的数据源数组中删除内容cellForRowAtIndexPath

于 2013-10-18T10:52:30.067 回答