【发布时间】:2016-03-04 17:29:48
【问题描述】:
我有UIViewController 1,有scroll view。在这个scrollview 里面有一个container view 固定到top/bottom leading/trailing(没有固定高度)。 Container view 已将 UITableView 固定到 top/bottom trailing/leading 和 height constraint with 0 constant,这将在 updateViewConstraints 中更改为内容大小高度。
UIViewController 1的View出现时,Container View有约束:
NSLayoutConstraint:0x7b03e5f0 V:[UITableView:0x7c42a200(54)], NSLayoutConstraint:0x7b0ba120 V:|-(0)-[UITableView:0x7c42a200](名称:'|':UIView:0x7b0b7000), NSLayoutConstraint:0x7b0ba1b0 V:[UITableView:0x7c42a200]-(0)-| (名称:'|':UIView:0x7b0b7000), NSLayoutConstraint:0x7b65f900 'UIView-Encapsulated-Layout-Height' V:[UIView:0x7b0b7000(0)]
将尝试通过打破约束来恢复
NSLayoutConstraint:0x7b03e5f0 V:[UITableView:0x7c42a200(54)]
UIView-Encapsulated-Layout-Height 是什么?我怎么能跳过它?因为它打破了“正确”约束(我更新到内容大小高度)。谢谢
【问题讨论】:
-
认为这是您的表格视图单元格的高度。你是怎么设置的?
-
我对单元格没有任何限制。单元格高度由 heightForRowAtIndexPath: 确定,返回 tableView.rowHeight。怎么可能?谢谢
-
构建和运行时会出现什么?您是否尝试过更改视图的背景颜色以便查看它们是如何绘制的?
-
显示的容器视图高度为零。但是我想根据内容视图调整大小,但是 NSLayoutConstraint:0x7b03e5f0 V:[UITableView:0x7c42a200(54)] 被删除了,因为这个约束 NSLayoutConstraint:0x7b65f900 'UIView-Encapsulated-Layout-Height' V:[UIView :0x7b0b7000(0)]
-
如何使容器视图具有基于内容视图的高度(我确定内容视图对宽度/高度有正确的约束)?
标签: ios objective-c autolayout uicontainerview