尝试使用键盘扩展程序进行自动布局。最初我以为我会以编程方式制作按钮,但后来我意识到最好用xib做这个因为我的要求和多种屏幕尺寸。
请参阅下面的屏幕截图,了解我所做的当前配置。 按钮2:
按钮1并在应用上发布:
所有约束配置如下所示:
我想在这里做的就是确保按钮填满屏幕宽度。它们可以扩展宽度以匹配屏幕尺寸和方向。不知怎的,我觉得它无法理解设备的宽度。我需要为此指定一些内容吗?
由于
答案 0 :(得分:5)
确保在 viewDidLoad 上设置 UIView的维度,使其看起来像这样:
self.mainView.frame = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height);
我有同样的问题,这对我有用。你的约束条件很好。
答案 1 :(得分:1)
您对两个按钮之间的距离没有限制。尝试在每个按钮的按钮之间添加约束。
答案 2 :(得分:1)
Ben Flores的答案对我来说也是如此,但我必须将我的代码放在viewDidLayoutSubviews
中。否则我的键盘会崩溃而不会出现。 Swift 3版本:
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
let frameSize = self.view.frame.size
self.mainView.frame = CGRect(x: 0, y: 0, width: frameSize.width, height: frameSize.height)
}