【发布时间】:2016-05-18 19:07:31
【问题描述】:
我使用故事板来布局我的视图。我定位带有约束的视图。我有一个关于调整约束大小的问题。如何在不编写 if/else 循环的情况下为不同的设备尺寸设置不同的约束常数。有没有办法在故事板中设置它?我对父布局有一个最高约束,例如常数值为 10。这对于 iPhone 5 屏幕来说没问题,但在 iPhone 6/6 plus 屏幕上它应该高于 10。所以应该计算约束。目前我计算一个比例因子是这样的:
let bounds = UIScreen.mainScreen().bounds;
let width = bounds.size.width;
let scaleFactor = width/320; // 320 because base design was created for iPhone 5
// calc top constraint connect from storyboard
self.topConstraintView.constant = self.topConstraintView.constant * scaleFactor;
这种方式在处理不同设备上的约束时是否正确?
【问题讨论】:
-
在界面生成器中不能执行此操作是否有特定原因?更改班级规模并为您要支持的班级设置约束。
-
如何在界面生成器中为不同的设备尺寸设置不同的约束常数?我不知道该怎么做。
-
在界面构建器中,您无法使用相同的 xib 进行操作,没有通过更改设备类型来实现约束的选项
-
好的,谢谢你的帮助,我想是的。但是有没有办法在界面构建器中设置相对于边距的约束,以便它在更高的屏幕上单独缩放?
标签: ios swift nslayoutconstraint