Swift 在 UITableView 中为容器视图设置约束
Posted
技术标签:
【中文标题】Swift 在 UITableView 中为容器视图设置约束【英文标题】:Swift set constraints to container view in UITableView 【发布时间】:2017-03-23 08:21:51 【问题描述】:我有UITableView
,我将容器视图作为标题放在顶部,如下所示:
一切正常。
现在我想在点击单元格时隐藏此容器标题视图。
我的第一次尝试是:
UIView.animate(withDuration: 0.3, animations:
self.containerView.frame.size.height = 0
)
女巫隐藏视图,但不显示单元格,这是预期和正常的,因为我只更改容器视图的框架,而不是其他视图。
然后我尝试在情节提要中添加约束,但由于某种原因我无法设置它们。
这是为什么呢?以及如何实现隐藏容器视图,并将所有其他单元格置于顶部。
【问题讨论】:
尝试更改tableview.estimatedSectionHeaderHeight = 0
不,这没有帮助...结果保持不变。
我建议将标题视图添加为另一个单元格并将其隐藏(因为您隐藏了表格视图中的第一个单元格),它应该是第一个单元格...
一旦您将 headerview 框架高度更改为 0,尝试将 headerview 重新分配到该表我已经做了同样的事情并且它为我工作
请查看***.com/questions/19056428/…
【参考方案1】:
试试这个
UIView.animate(withDuration: 0.5)
let headerView = tableView.tableHeaderView!
headerView.setNeedsLayout()
headerView.layoutIfNeeded()
headerView.frame.size.height = 0
tableView.tableHeaderView = headerView
【讨论】:
以上是关于Swift 在 UITableView 中为容器视图设置约束的主要内容,如果未能解决你的问题,请参考以下文章
在 Swift 中为完整的 UITableView 创建模糊效果
如何在 Swift 4 中为 UICollectionView 的部分设置最大元素数?
Swift:使用 prepareForSegue 将 UIView 容器的高度设置为嵌入式 UITableView 的高度