在以编程方式将自定义视图添加到现有视图控制器(使用NIB创建)时,我遇到了一些问题。具体来说,当该视图控制器出现时,我收到以下错误消息:
(
"<NSAutoresizingMaskLayoutConstraint:0x1c4290a90 h=--& v=--& InfoToolbar:0x135e73d00.midY == 1002 (active)>",
"<NSAutoresizingMaskLayoutConstraint:0x1c4290ae0 h=--& v=--& InfoToolbar:0x135e73d00.height == 44 (active)>"
)
Will attempt to recover by breaking constraint
<NSAutoresizingMaskLayoutConstraint:0x1c4290a90 h=--& v=--& InfoToolbar:0x135e73d00.midY == 1002 (active)>
InfoToolbar是一个应该位于屏幕底部的视图,它的框架设置为[bottomBar setFrame:CGRectMake(0, screenHeight-44, screenWidth, 44)]
。
这段代码是很久以前编写的,当我们升级到XCode 9时似乎问题就出现了。错误很奇怪,因为这些约束似乎工作正常(即如果视图高44,那就是&#39; s在这种情况下,中点将高于视图底部21,对于iPad Air来说将是1002。)
我已经对SO进行了一些研究,我尝试将此视图上的setTranslatesAutoresizingMaskIntoConstraints设置为false,但是当我这样做时,视图会完全消失并且出现AUTOLAYOUT AMBIGUOUS
错误。
有什么想法?谢谢!