对于复杂的tableHeaderView,计算高度非常的不灵活,还是希望用自动布局的方式设置高度。
思路:自动布局实现tableHeaderView后,使用布局刷新来获取到真实的高度,并且在合适时机去赋值正确的高度
// 设置正确的tableHeaderView 高度
mainTab.tableHeaderView?.setNeedsLayout()
mainTab.tableHeaderView?.layoutIfNeeded()
if let fitSize = mainTab.tableHeaderView?.systemLayoutSizeFitting(UIView.layoutFittingCompressedSize) {
mainTab.tableHeaderView?.frame = CGRect(x: 0, y: 0, width: SWScreen_width, height: fitSize.height)
}
网友评论