我在这里经历了很多线程并尝试了两个最推荐的解决方案。 在ViewDidLoad()方法内部:
self.darkBackgroundWithButtons.frame = CGRectMake(0, 0, UIScreen.mainScreen().bounds.width, UIScreen.mainScreen().bounds.height * 0.254)
或
self.darkBackgroundWithButtons.frame = CGRectMake(0, 0, self.view.frame.width, self.view.frame.height * 0.254)
另外,在我的故事板中,我设置了视图高度约束的低优先级 (如果我没有在故事板中设置高度,xcode会抱怨模糊的布局)
但是上面这些代码行都没有对darkBackgroundWithButtons做任何事情,它对于每个设备大小都保持相同的高度
答案 0 :(得分:1)
这可能是问题所在:
在界面构建器中,您将约束设置为按钮,因此在尝试更新框架时不会更改其高度。这样做:
首先将你的约束从界面构建器连接到你的viewcontroller,就像你通常用按钮一样。
然后使用此代码更改约束:
var index = self.darkBackgroundWihButtons.constraints.indexOf("your constrain name")!
self.darkBackgroundWithButtons.constraints[index].constant = 0.2 // or whatever number you want