我有一个我正在维护的故事板UITableViewController
。
UITableView
设置为使用动态原型,并有2个单元格。
在这两个单元格之上是在表格视图中插入的UIView
。该视图包含UIButton
和另一个自定义UIView
。两者都有约束。结果是我们有一个表格视图,上面有一个按钮。
现在,在某些情况下,我们要删除该按钮,并让其余的表视图在UI中向上移动。我可以删除该按钮 - 单独或删除父UIView,但我似乎无法让表更改原型单元格的位置。
为了清楚地表明,我的文档大纲如下所示:
我尝试了几种不同的方法来删除按钮。在阅读之后,从超级视图中删除它也将删除约束,这就是我目前采用的方法。
[self.buttonContainerView removeFromSuperview];
我尝试删除按钮,子视图和容器视图。我也尝试过显式删除约束然后删除视图。这些似乎都不起作用。
我还尝试了上面的方法,在表视图上调用setNeedsLayout和setNeedsUpdateConstraints,以及在视图上调用setNeedsDisplay。
我也尝试将第一个视图的行高设置为0,但事实证明它不是UITableViewCell
,所以这也不起作用。
当然,如果我从故事板中删除该容器视图,原型单元格确实会在UI中显示它们应该的位置。
你能感受到喋喋不休吗?
我还有什么可以在这里有效删除该顶视图?
答案 0 :(得分:1)
我没有意识到我的设置是带有表头的UITableView。要删除它并修复间距问题,我只需要在self.tableView.tableHeaderView = nil
中设置viewWillAppear:
。