并排排列3个UIButtons(宽度相等)

时间:2016-03-23 06:11:12

标签: ios xcode uibutton autolayout

如何并排排列3个UIButtons。我正在使用自动布局。我的要求是:

1.无论设备如何,它们的宽度都应相等

2.从视图的开始到结束垂直占据

enter image description here

我尝试了不同的方式,但未能实现这一目标。是否可以通过界面构建​​器

4 个答案:

答案 0 :(得分:19)

有两种方法可以做到这一点。

方式1:

使用按钮的等宽约束

选择所有3个按钮并添加

上,左,右,高度和等宽

enter image description here

方式2: 使用堆叠视图

第1步:添加3个按钮。

第2步:选择所有按钮,选择后,点击右下方自动布局工具栏中的 堆栈按钮 故事板画布。见下图。

enter image description here

或者您可以嵌入来自 编辑器 - >嵌入 - > StackView

第3步:约束添加到 StackView 。如下。 enter image description here

第4步: 选择StackView,选择后转到 属性检查器 。将 分发 更改为 同等地填写

enter image description here

它完成了!

答案 1 :(得分:7)

选择3个按钮并给出此约束

  - leading
  - trailing
  - bottom
  - Height
  - equal width 

您可以查看equal width to 3 labelssetting two buttons of equal width, side by side

中的部分参考文献

答案 2 :(得分:1)

将约束设置如下:

  1. 选择所有按钮并设置等宽约束,此约束将保持所有按钮的宽度相同。
  2. 选择所有按钮并设置底部边距,这将使所有按钮保持在屏幕底部的所有形状因子。
  3. 使用superview分别设置第一个和最后一个按钮的左边距和右边距。
  4. 选择中间的按钮并设置左边距和右边距约束。

答案 3 :(得分:1)

可以通过界面构建​​器。这就是你做的事情

  1. 单击“对象库”按钮,从故事板中创建UIViewController。 See the blue circle with the square in it- that's the Object Library

  2. 现在选择并拖动三个按钮并将它们添加到View Controller中。请务必在此处添加按钮。在View Controller的视图中拖放。务必将按钮放在View Controller的底部。

  3. 添加完三个按钮后,它应如下所示

  4. 现在是有趣的部分。现在您需要做的是为按钮添加约束,使它们始终保持在底部且宽度相等。为简单起见,我将三个按钮称为左,中,右按钮。要将按钮保持在按钮上,请选择中心按钮并按键盘上的CONTROL并将按钮拖动到视图。选择约束

  5.   

    垂直间距到底部布局指南

    并保持常量= 0.现在,对于其他两个按钮,您可以执行此操作。只需按下CONTROL并拖动到中央按钮即可。选择约束

      

    并将该约束保持为0.这确保所有按钮都保持在底部。

    根据需要为所有三个按钮添加高度约束。

    最后,这些是您必须具备的限制因素。

    中心按钮约束

    Center Button Constraint

    左按钮约束

    Left Button Constraint

    右键约束

    Right Button Constraint

    1. 现在您需要做的就是控制+将中心按钮的宽度约束拖到ViewController.swift文件中,并将宽度常量更改为

      widthConstraint.constant = UIScreen.mainScreen()。bounds.width / 3

    2. 就是这样。