【发布时间】:2019-05-28 01:08:12
【问题描述】:
我有 3 个 UIView——view1、view2、view3。我在情节提要中设置约束如下:
- view1.leading = safeArea.leading + 0(约束 1 为 IBOutlet),
- view2.leading = view1.leading,
- view3.leading = view2.leading
接下来,我在代码中更改constraint1 中的常量。我希望 view1、view2、view3 在 view1.leading 改变时自动重新对齐。但是我得到了自动布局错误:
[LayoutConstraints] Unable to simultaneously satisfy constraints.
Probably at least one of the constraints in the following list is one you don't want.
Try this:
(1) look at each constraint and try to figure out which you don't expect;
(2) find the code that added the unwanted constraint or constraints and fix it.
(
"<NSLayoutConstraint:0x283317a70 UIView:0x10321f7d0.leading == UILayoutGuide:0x28290ddc0'UIViewSafeAreaLayoutGuide'.leading (active)>",
"<NSLayoutConstraint:0x283316bc0 UIView:0x10321f7d0.leading == UILayoutGuide:0x28290ddc0'UIViewSafeAreaLayoutGuide'.leading + 5 (active)>"
)
Will attempt to recover by breaking constraint
<NSLayoutConstraint:0x283316bc0 UIView:0x10321f7d0.leading == UILayoutGuide:0x28290ddc0'UIViewSafeAreaLayoutGuide'.leading + 5 (active)>
我做错了什么?
【问题讨论】:
-
向我们展示约束以及您如何更改该约束的常量。似乎添加了另一个约束。
-
constraint1.constant = 5
-
你能分享显示它们何时以及如何被调用的相关代码吗?
-
该错误看起来像您在 view1 上有 2 个主要约束,其中一个现在的常量为 5。
-
让我分享来自 Storyboard 的屏幕截图。
标签: ios uiview autolayout storyboard ios-autolayout