AutoLayout根据children设置UITableViewCell的高度
Posted
技术标签:
【中文标题】AutoLayout根据children设置UITableViewCell的高度【英文标题】:AutoLayout set height of UITableViewCell based on children 【发布时间】:2015-03-20 21:38:17 【问题描述】:我正在尝试根据其子项的约束来设置 UITableViewCell 的高度。基本上,这是布局:
UITableView
> UITableViewCell
> NestedUIView
(可计算高度)
我首先将NestedUIView
的顶部、底部、左侧和右侧约束设置为距离UITableViewCell
10 像素。然后,我尝试添加一个高度约束(这在我的脑海中会强制 UITableViewCell
扩展以适应该内容。当然,它会导致约束冲突并失败。
这似乎应该是微不足道的,我做错了什么?
【问题讨论】:
【参考方案1】:将此添加到您的 viewDidLoad
方法中
self.tableView.rowHeight = UITableViewAutomaticDimension;
self.tableView.estimatedRowHeight = 42;
这将告诉表格使用单元格约束来确定高度。
【讨论】:
奇怪的是,添加该代码的效果为零。冲突错误看起来仍然完全相同。 其实我只是让它工作。我需要将约束应用于单元格的 contentView 而不是单元格本身。有道理。 实际上我现在看到如果我将高度设置得太高(大约 > 200),它会再次导致错误。有什么想法吗?以上是关于AutoLayout根据children设置UITableViewCell的高度的主要内容,如果未能解决你的问题,请参考以下文章
XCODE/Swift Autolayout ScrollView with dynamic label, textview etc. 如何根据 textview 设置滚动视图高度
如何使用 AutoLayout 根据父高度调整子视图高度而不添加/删除约束