如何在相同大小的类中给出不同的约束(xcode 8 AutoLayout)

时间:2016-10-29 10:15:29

标签: ios autolayout storyboard

First image for iPhone 6s device: Size class is wCompact - rRegular and constraint Constant is 502

Second image for iPhone 5c: Size class is wCompact - rRegular and constraint Constant is 502

尺寸等级相同,约束也相同,但得到不同高度的绿色框。 对于相同大小的类,常量是否应该相同?

如果没有那么我将如何使用自动布局获得相同高度的绿色框?我希望绿色框高度=设备总高度的25%

提前致谢..

1 个答案:

答案 0 :(得分:1)

由于您已从底部给出了绿色盒子的恒定距离,因此它将保持所有设备的恒定距离。

其次,您已将绿色框的顶部与topLayoutGuide对齐,因此它将对所有设备保持相同。

所以基本上top用topLayout固定,底部距离固定为502.如果你在不同屏幕高度的设备上运行相同,它会自动调整你的绿箱高度,因为其他两个参数(顶部,底部)是固定的。

请为绿色视图添加高度约束,如图所示。它会给你greenViewHeight = superViewHeight的25%

enter image description here

这是为您的问题创建的演示 enter image description here