将自定义单元格(使用自动布局创建)的高度设为零

Make custom cell's ( created with autolayout) height to zero

我想将使用自动布局创建的自定义表格视图单元格的高度设置为零。基本上我将容器视图作为子视图添加到 cell.contentview。容器视图的顶部、底部、左侧和右侧固定到内容视图的顶部、底部、左侧和右侧。在某些情况下我想将高度设置为0.

我遍历了内容视图的约束,发现这个约束导致了问题。

NSLayoutConstraint:0x1369d8670 UITableViewCellContentView:0x1369b1a90.height == 48

这个约束是tableview默认添加的。

我尝试过的事情:我删除了容器视图的所有子视图。但这不会使单元格高度为零。

我不想做的事情:

  1. 我不想重新加载整个表视图,因为我会有很多行和很多子视图。
  2. 我不想删除行

如何将高度设置为零?

您可以重新加载特定行,以便它调用 tableview 的委托方法来更改高度 heightForRorAtIndexpath。当您以编程方式重新加载特定行时,您可以设置高度 1。您可以存储要设为零的临时 indexpath

剪辑clipsToBounds=YES

的所有子视图

致电[self.tableView layoutIfNeeded];