我在viewdidload方法中添加了这段代码,将垂直空间约束添加到最顶层视图
基于苹果技术Q& A QA1797 防止状态栏覆盖您的观点
[NSLayoutConstraint constraintWithItem:self.toolbar1
attribute:NSLayoutAttributeTop
relatedBy:NSLayoutRelationEqual
toItem:self.topLayoutGuide
attribute:NSLayoutAttributeBaseline
multiplier:1.0
constant:0.0];
但它崩溃应用并显示此错误 NSInvalidArgumentException',原因:'[NSLayoutConstraint constraintWithItem:attribute:relatedBy:toItem:attribute:multiplier:constant:]:Constraint必须包含第一个布局项'
任何线索为什么我会收到此错误以及如何解决此错误。
感谢您的帮助。
答案 0 :(得分:4)
如果两个项目都为零,则会发生此错误。很可能你的第一个项目'self.toolbar1'是零。
答案 1 :(得分:1)
当您在init方法中设置UI代码时,当您的视图尚未创建时,会发生这种情况。尝试将代码移动到viewDidLoad方法,看看它是否有效。