iOS 10:NSInvalidLayoutConstraintException:约束不正确地关联不兼容类型的锚点
iOS 10: NSInvalidLayoutConstraintException: Constraint improperly relates anchors of incompatible types
更新到 iOS 10 后,我在我的一个应用程序上遇到了一堆这个错误
NSInvalidLayoutConstraintException: Constraint improperly relates
anchors of incompatible types:
<NSLayoutConstraint:0x170495270 UIView:0x1010e1d90.top == AppName.OtherView:0x1010dc6f0.centerX (active)>
我以前从未遇到过使用这样的约束的问题,我只在我的 iOS 10 台设备上遇到过。有什么想法吗?
你可能正在做这样的事情:
NSLayoutConstraint(item: viewA, attribute:
.leading , relatedBy: .equal, toItem: parentView, attribute: .top, multiplier: 1.0, constant: 20)
所以你不会像 .leading
和 .top
那样将正确的锚点拼接在一起。在这种情况下,它必须是 .leading
和 .leading
.
有趣的是,这不是 iOS9 的问题。
只需使用重置建议的约束,
它将修复缺少的约束
更新到 iOS 10 后,我在我的一个应用程序上遇到了一堆这个错误
NSInvalidLayoutConstraintException: Constraint improperly relates anchors of incompatible types:
<NSLayoutConstraint:0x170495270 UIView:0x1010e1d90.top == AppName.OtherView:0x1010dc6f0.centerX (active)>
我以前从未遇到过使用这样的约束的问题,我只在我的 iOS 10 台设备上遇到过。有什么想法吗?
你可能正在做这样的事情:
NSLayoutConstraint(item: viewA, attribute:
.leading , relatedBy: .equal, toItem: parentView, attribute: .top, multiplier: 1.0, constant: 20)
所以你不会像 .leading
和 .top
那样将正确的锚点拼接在一起。在这种情况下,它必须是 .leading
和 .leading
.
有趣的是,这不是 iOS9 的问题。
只需使用重置建议的约束,
它将修复缺少的约束