iOS 自动布局:两个等宽的按钮并排放置
iOS Autolayout: two buttons of equal width, side by side
我目前在使用 AutoLayout 时遇到困难。我正在使用界面构建器并尝试并排放置两个等宽的按钮,如下图所示。
从下面的预览图像中,我的 titleImage 已被正确约束并正确显示,但按钮不是。我尝试将按钮 1 与 titleImage 的前缘对齐,将按钮 2 与 titleImage 的后缘对齐,但是此时两个按钮之间的宽度分布变得倾斜,如下所示。
我的 objective 是为了了解缺少哪些约束,应该将哪些约束应用于两个按钮以保持相等的宽度,而不管设备如何。如果可能的话,我想通过界面生成器而不是额外的代码来实现这一点。
添加以下约束条件
- 从 button1 到 button2 分配相等的宽度。
- 指定两个按钮之间的水平间距。
- 将前导 space 从 button1 分配给它的父视图。
- 将 button2 的尾随 space 分配给它的父视图。
- 将顶部 space 分配给两个按钮。
请让我知道这对你有没有用。
您可以查看我的示例 - 您可以通过使用比例约束轻松瞄准这个目标。
您也可以轻松瞄准成比例的多个 UIView。
请看附件示例
https://dl.dropboxusercontent.com/u/48223929/TestViewController.xib
iOS9 中的堆栈布局,将完成这项工作非常好。
将堆栈视图添加到您的视图并配置如下:
我的解决办法是
- 在两个按钮的中间放置一个小视图并使其居中(容器中水平居中,容器中垂直居中为0)。
- 为小视图添加高度和宽度。
- 为按钮添加约束并为小视图提供水平 space 约束。
- 为小视图设置与按钮或视图颜色相同的背景颜色。
注意:见截图。
按照步骤和屏幕截图轻松解决
步骤 1)
- 对于按钮 1:设置约束: (1)Leading,(2)Top 或 Bottom 根据您的需要,(3)Height
步骤 2)
- 对于按钮 2:设置约束: (1)尾随,(2)顶部或底部根据需要,(3)高度
步骤 3)
- 按住 Ctrl 键并从按钮 1 拖动到按钮 2
- Select 水平间距
Step-4)
- Select 按钮(使用命令)和添加约束 等宽
输出
希望对您有所帮助:)
我目前在使用 AutoLayout 时遇到困难。我正在使用界面构建器并尝试并排放置两个等宽的按钮,如下图所示。
从下面的预览图像中,我的 titleImage 已被正确约束并正确显示,但按钮不是。我尝试将按钮 1 与 titleImage 的前缘对齐,将按钮 2 与 titleImage 的后缘对齐,但是此时两个按钮之间的宽度分布变得倾斜,如下所示。
我的 objective 是为了了解缺少哪些约束,应该将哪些约束应用于两个按钮以保持相等的宽度,而不管设备如何。如果可能的话,我想通过界面生成器而不是额外的代码来实现这一点。
添加以下约束条件
- 从 button1 到 button2 分配相等的宽度。
- 指定两个按钮之间的水平间距。
- 将前导 space 从 button1 分配给它的父视图。
- 将 button2 的尾随 space 分配给它的父视图。
- 将顶部 space 分配给两个按钮。
请让我知道这对你有没有用。
您可以查看我的示例 - 您可以通过使用比例约束轻松瞄准这个目标。 您也可以轻松瞄准成比例的多个 UIView。 请看附件示例
https://dl.dropboxusercontent.com/u/48223929/TestViewController.xib
iOS9 中的堆栈布局,将完成这项工作非常好。 将堆栈视图添加到您的视图并配置如下:
我的解决办法是
- 在两个按钮的中间放置一个小视图并使其居中(容器中水平居中,容器中垂直居中为0)。
- 为小视图添加高度和宽度。
- 为按钮添加约束并为小视图提供水平 space 约束。
- 为小视图设置与按钮或视图颜色相同的背景颜色。
注意:见截图。
按照步骤和屏幕截图轻松解决
步骤 1)
- 对于按钮 1:设置约束: (1)Leading,(2)Top 或 Bottom 根据您的需要,(3)Height
步骤 2)
- 对于按钮 2:设置约束: (1)尾随,(2)顶部或底部根据需要,(3)高度
步骤 3)
- 按住 Ctrl 键并从按钮 1 拖动到按钮 2
- Select 水平间距
Step-4)
- Select 按钮(使用命令)和添加约束 等宽
输出
希望对您有所帮助:)