我想使用自动布局来实现期望的行为(或者如果使用委托或其他东西无法做到这一点)。我拥有的是一个带有一个静态单元格的 tableView,这个单元格有一个 containerView,它有一个带有动态原型单元格的 tableViewController。
我想要的是能够使用自动布局来动态设置嵌入容器视图的静态单元格的高度。
这是故事板:
这些是我的约束(带有容器视图的 contentView 的静态单元格):
在静态单元格中拥有 containerView 的 viewController 中,我在ViewDidLoad方法上拥有的是:
override func viewDidLoad() {
super.viewDidLoad()
courseDetailTableView.estimatedRowHeight = 200
courseDetailTableView.rowHeight = UITableViewAutomaticDimension
}
并将 tableView 的委托与 staticCell 一起使用:
override func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return UITableViewAutomaticDimension
}
但是有了这个,静态单元格的高度真的很小......这意味着自动布局不能只用我设置的约束来设置他的内容的高度。我只说约束,因为如果我设置一个对将高度设置为 400 的 containerView 的 contentView 的更多约束,然后该单元格的高度为 400..
我只是想知道是否有自动布局的方法来设置静态单元格的高度以匹配 containerView 的高度。
我知道也许使用一个代表首先计算 containerView 的高度并使用这个高度来设置 heightForRow 可能可行我想知道是否有更简单的方法
太感谢了。