我试图显示一个标题栏,图像,然后是两个按钮,几乎就像下面一样。主要区别在于我希望两个项目按钮的宽度为50%,每个按钮都是纯色(占据屏幕的整个底部)。我没有使用标签栏,因为按钮只是为了更改图像,而不是整个视图控制器。
到目前为止,使用故事板,我只是停留在按钮上。我把它们作为条形按钮项目放在工具栏中。然后我尝试在控制器中设置它们的宽度:
@IBOutlet weak var firstButton: UIBarButtonItem!
@IBOutlet weak var secondButton: UIBarButtonItem!
override func viewDidLoad() {
super.viewDidLoad()
self.firstButton.width = self.view.bounds.width / 2
self.secondButton.width = self.view.bounds.width / 2
}
我相信它们已正确设置,但工具栏正在强制某些空间位于第一个按钮的前面。我还没有改变它们的背景颜色,但我希望一旦我完成间距就会很简单。
我对iOS开发很新,所以任何提示都会受到赞赏。我的目标是让它普遍适用,但我决定让它在iPhone锁定的肖像上工作。
答案 0 :(得分:6)
使用Autolayout相对容易,您需要将按钮的宽度设置为等于SuperView并将乘数常量设置为0.5
或者将工具栏宽度设置为Superview with Multiplier 1.0,然后UIButtons等于工具栏的宽度,但乘数为0.5
像这样的东西
答案 1 :(得分:3)
以前的答案并没有解决问题,看起来有一些使用工具栏的内部填充。那可能无法为Bar Buttons添加约束。
我的实际解决方案是:
删除栏按钮和工具栏。在底部添加两个UIButtons。添加以下约束
第一个按钮
第二个按钮
第一个按钮和第二个按钮
答案 2 :(得分:1)
如果您正在使用自动布局,则需要将工具栏的宽度设置为等于宽度限制的容器视图。然后将两个项目的宽度设置为彼此相等,将这些间距设置为零。
无需手动设置宽度。
顺便说一句,如果你想要它是全宽的,不要忘记对你的UIImageView做同样的事情。
有用的链接:
http://www.raywenderlich.com/83129/beginning-auto-layout-tutorial-swift-part-1 http://www.raywenderlich.com/50317/beginning-auto-layout-tutorial-in-ios-7-part-1 http://www.raywenderlich.com/64392/video-tutorial-beginning-auto-layout
答案 3 :(得分:0)