NSLayoutAttributeWidth和NSLayoutAttributeLeft + NSLayoutAttributeRight之间的区别

时间:2015-01-16 11:24:40

标签: ios nsautolayout ios-autolayout

如果我有2个视图view1和view2。假设view1的宽度设置在别处。我想使view2的宽度与view1相同

我可以为view2创建一个LayoutConstraint NSLayoutAttributeWidth,将它与view1相关联,这样可以使view2的宽度与view1的宽度相同。

或者,我可以为view2创建两个LayoutConstraints。其中一个NSLayoutAttributeLeft与view1的左侧相关,另一个NSLayoutAttributeRight与view1的右侧相关。左右边缘相同也不会使view2与view1的宽度相同吗?

这些同样有效的方法是否匹配宽度?

1 个答案:

答案 0 :(得分:0)

答案是某种方式"是",取决于你的要求。

请记住,使用约束

NSLayoutAttributeLeft 
NSLayoutAttributeRight 

如果您view1水平重新定位,view2也将重新定位,仍保持相同的宽度。

如果是约束

NSLayoutAttributeWidth 

第一个view1的水平重定位不会导致view2的重新定位。