如何在自动布局中管理两个视图之间的差距

时间:2015-07-10 08:31:44

标签: ios autolayout constraints

我正在为ViewController使用自动布局我知道如何使用约束以编程方式定义两个视图之间的间隙。我现在想做的是当屏幕尺寸增大时,也会增加间隙。因为我的UIViews在iphone 4s和5s中正确定位,但是在6和6中,它们位于屏幕的一个小区域。我知道添加乘数我们可以设置视图的宽高比,但是,当屏幕高度增加时,如何增加2个视图之间的差距。

更新

enter image description here

让我们说这个图片,上面有一个标志,请登录标签。

这是我的垂直位置约束

V:|-70-[Title]-130-[lblFirst]-0-[lblSecond]-20-[textusername]-10-[txtpassword]-10-[btnLogin]

此标题是此“请登录”标签上方130pix的图像。我想在iphone 6和6 plus

时增加130

1 个答案:

答案 0 :(得分:1)

使用带有alpha 0和清晰颜色的UIView并使用它来代替间隙,并使用纵横比来查看用于间隙和顶部和底部或左右的视图,无论您的情况如何,您想要制作的视图之间的视图差距动态。此外,您还需要为gapView添加一些对齐约束,但它会起作用。我无法找到任何其他方法来轻松完成这项工作,所以我在所有项目中都使用了这种方法并且一切正常。我认为具有清晰色彩和alpha 0的UIView不会以任何方式影响屏幕或性能。我们可以使用它。

下面是一个示例,例如,如果您有两个垂直文本字段,并且想要动态地增加它们之间的间隙,那么在两者之间使用完全相同的文本字段宽度进行视图并添加这些约束。

1)GapView顶部到上部文本字段。

2)GapView的底部到下面的文本字段。

3)与任何文本字段相等的宽度或前导和尾随超视图或主视图。

4)主视图的比例高度(您可以通过从子视图向任何superview添加相等的高度,然后通过更改乘数来添加此约束);

您的GapView会相应增加和减少。