我刚刚阅读了一些关于如何以编程方式操作约束编号的信息,但我认为我需要使用 Xcode 直观地查看它。所以我决定放一个这样的 UIView 看看 Constraints 发生了什么:
它会自动创建 4 个约束:
修改数字后,我明白了这一切的含义。我们有 2 个垂直空间和 2 个水平空间。但让我们先关注垂直...
从屏幕顶部测量的垂直空间之一(我猜是superview),我给这个数字30。从底部测量的其他垂直空间,我给-50。
现在,当它变成代码时,我真的不明白如何给出这两个数字。据我所知,这是使用代码设置约束的方法:
NSLayoutConstraint *myConstraint =[NSLayoutConstraint
constraintWithItem:_screenView
attribute:NSLayoutAttributeHeight
relatedBy:NSLayoutRelationEqual
toItem:_container
attribute:NSLayoutAttributeHeight
multiplier:20
constant:200];
[_screenView addConstraint: myConstraint];
让我们假设_screenView
是一个超级视图,并且_container
UIView 放在它上面。我有 3 个问题:
- 如何使用代码手动设置垂直空间(30 和 -50)?因为从情节提要中我看不到垂直空间的任何不同名称或 ID。他们都有相同的名字。我必须创建 2
NSLayoutConstraint
吗? - 那么如何将它添加到_screenView中呢?我必须创建这个:
[_screenView addConstraint: myConstraint];
两次吗? multiplier
用来做什么的?因为我在情节提要中看不到该选项。
非常感谢您。