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

How to manage the gap between two views in auto layout

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

更新

假设这张图片,上面有一个标志请登录标签。

这是我的垂直位置约束

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

此标题是此“请登录”标签上方 130 像素的图片。 iphone6和6加

我想增加这个130

采用 alpha 0 和清晰颜色的 UIView 并使用它代替间隙,并使用用于间隙和顶部和底部或左侧和右侧的视图的纵横比,无论您的情况如何与您想要的视图之间使差距动态化。而且您还需要向 gapView 添加更多对齐约束,但它会起作用。我找不到任何其他方法可以轻松地做到这一点,所以我在所有项目中到处都使用了这种方法并且一切正常。我认为具有清晰颜色和 alpha 0 的 UIView 不会以任何方式影响屏幕或性能。我们可以用这个。

这里是一个例子,如果你有两个垂直的文本字段,你想动态地增加它们之间的间隙,然后在文本字段宽度完全相同的情况下查看,并添加这些约束。

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

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

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

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

而你的GapView也会随之增减。