Swift在UITableView

时间:2017-03-23 08:21:52

标签: ios swift uitableview nslayoutconstraint

我有UITableView,我将容器视图放在顶部作为标题:

enter image description here

一切都运作良好。

现在,我想在单元格中点击时隐藏此容器标题视图。

我的第一次尝试是:

UIView.animate(withDuration: 0.3, animations: {
    self.containerView.frame.size.height = 0
})

女巫隐藏视图,但不要让细胞上升,预期和正常,因为我只更改容器视图的框架,而不是其他视图。

然后我尝试在故事板中添加约束,但出于某种原因我无法设置它们。

为什么?我如何实现隐藏容器视图,并将所有其他单元格置于顶部。

1 个答案:

答案 0 :(得分:1)

试试这个

UIView.animate(withDuration: 0.5) {
            let headerView = tableView.tableHeaderView!
            headerView.setNeedsLayout()
            headerView.layoutIfNeeded()
            headerView.frame.size.height = 0
            tableView.tableHeaderView = headerView
        }