iOS 10:NSInvalidLayoutConstraintException:约束不正确地关联不兼容类型的锚点

时间:2016-09-16 13:27:33

标签: ios swift nslayoutconstraint ios10

更新到iOS 10后,我的一个应用程序上出现了这个错误

  

NSInvalidLayoutConstraintException:约束不正确地关联   不兼容类型的锚:

<NSLayoutConstraint:0x170495270 UIView:0x1010e1d90.top == AppName.OtherView:0x1010dc6f0.centerX (active)>

我以前从来没有遇到像这样的约束的问题,我只是在我的iOS 10设备上得到它。有什么想法吗?

2 个答案:

答案 0 :(得分:13)

你可能正在做这样的事情:

NSLayoutConstraint(item: viewA, attribute:
                .leading , relatedBy: .equal, toItem: parentView, attribute: .top, multiplier: 1.0, constant: 20)

所以你不要像.leading.top那样拼接正确的锚点。在这种情况下,它必须是.leading.leading

有趣的是,这不是iOS9的问题。

答案 1 :(得分:0)

只需将Reset设置为建议的约束, 它将解决缺少的约束