我有以下视图层次结构Main - >绿色 - >图
绿色视图具有下图中的限制
Img视图具有下图中的约束
因此,当我单击按钮时,绿色的框架会调整大小,因此Img视图会因为它们之间的约束而被调整。
但是我收到了一个错误:
2015-06-07 20:13:07.653 ZoomInZoomOut [7152:1435937]无法 同时满足约束。可能至少有一个 以下列表中的约束是您不想要的。试试这个:(1) 看看每个约束,并试图找出你不期望的; (2)找到添加了不需要的约束或约束的代码 并修复它。 (注意:如果你看到了 您不理解的NSAutoresizingMaskLayoutConstraints,请参阅 到UIView属性的文档 translatesAutoresizingMaskIntoConstraints)( “” “” “” “ (名称:'|':UIWindow:0x7fcbd3623630)>“, “”)
将尝试通过违反约束来恢复
在UIViewAlertForUnsatisfiableConstraints处创建一个符号断点 在调试器中捕获它。方法中的 在UIView中列出的UIConstraintBasedLayoutDebugging类别 也可能有所帮助。 2015-06-07 20:13:07.655 ZoomInZoomOut [7152:1435937]无法同时满足 限制。可能至少有一个限制因素 以下列表是您不想要的。试试这个:(1)看看每一个 约束并试图找出你不期望的东西; (2)找到 添加了不需要的约束或约束并修复它的代码。 (注意:如果您正在看到NSAutoresizingMaskLayoutConstraints,那么 不明白,请参阅UIView属性的文档 translatesAutoresizingMaskIntoConstraints)( “” “” “< _UILayoutSupportConstraint:0x7fcbd347fb60 V:[_ UILayoutGuide:0x7fcbd3487f80(20)]>”, “< _UILayoutSupportConstraint:0x7fcbd347e3f0 V:| - (0) - [_ UILayoutGuide:0x7fcbd3487f80](姓名: '|':UIView:0x7fcbd3480a20)>“, “< _UILayoutSupportConstraint:0x7fcbd347dd20 V:[_ UILayoutGuide:0x7fcbd34889a0(0)]>”, “< _UILayoutSupportConstraint:0x7fcbd3481700 _UILayoutGuide:0x7fcbd34889a0.bottom == UIView:0x7fcbd3480a20.bottom>”, “” “ (名称:'|':UIWindow:0x7fcbd3623630)>“, “”)
将尝试通过违反约束来恢复
在UIViewAlertForUnsatisfiableConstraints处创建一个符号断点 在调试器中捕获它。方法中的 在UIView中列出的UIConstraintBasedLayoutDebugging类别 也可能会有帮助。
单击按钮时调用的代码:
@IBAction func buttonClicked(sender: UIButton) {
zoomedView.frame.size.height += 10.0
zoomedView.frame.size.width += 10.0
zoomedView.setTranslatesAutoresizingMaskIntoConstraints(true)
zoomedView.superview?.updateConstraints()
}
从Auto Layout Tutorial Part 2: Constraints我知道这个错误是由冲突的约束引起的。但我没有在代码中添加任何新约束。在故事板中,如果我调整绿色视图的大小,我会得到一个错误的视图,我通过更新约束来修复。这就是为什么我试图在代码中实现,但从上面得到错误。谁能解释我做错了什么?