Autolayout需要负常数才能与superview对齐?

时间:2016-03-21 18:50:58

标签: ios nslayoutconstraint ios-autolayout

我的故事板中的约束有些奇怪。每当我希望子视图的边缘与视图控制器的超视图(前导,尾随,顶部,底部)对齐时,我必须将常量设置为-16。它应该是0,因为superview边缘和子视图之间存在0差异。但是,将其设置为0有效地在子视图边和超视图之间提供了+16缓冲区。

为什么我需要将其设置为-16?

1 个答案:

答案 0 :(得分:2)

  

任何时候我希望子视图的边缘与视图控制器的超级视图对齐

不,那不是你正在做的事情。这就是问题所在。您(不小心)将约束固定到superview的边距而不是边缘。这之间有一个至关重要的区别:

enter image description here

和此(按住Option键):

enter image description here