Ios 使用autolayout将UIButtons设置为等距
我的问题是,我找不到一种方法来设置3个UIButton,它们彼此之间的距离相等,而2个外部按钮与左右两侧的距离相等 这基本上是一个包含3个按钮的下拉视图,x定位的约束都需要以某种方式相互关联 我在自动布局中遗漏了什么概念Ios 使用autolayout将UIButtons设置为等距,ios,iphone,autolayout,Ios,Iphone,Autolayout,我的问题是,我找不到一种方法来设置3个UIButton,它们彼此之间的距离相等,而2个外部按钮与左右两侧的距离相等 这基本上是一个包含3个按钮的下拉视图,x定位的约束都需要以某种方式相互关联 我在自动布局中遗漏了什么概念 自动布局不支持这种开箱即用的功能 幸运的是,有一种聪明的方法可以做到这一点。在按钮之间插入透明的ui视图s。将这些ui视图的宽度标记为彼此相等。现在,它们将在彼此之间占据相等的空间 这就是它的样子。 您可以将它们设置为相等距离。以下是一个例子: 确保为所有按钮在右侧设置占位符
自动布局不支持这种开箱即用的功能 幸运的是,有一种聪明的方法可以做到这一点。在按钮之间插入透明的
ui视图
s。将这些ui视图的宽度标记为彼此相等。现在,它们将在彼此之间占据相等的空间
这就是它的样子。
您可以将它们设置为相等距离。以下是一个例子:
确保为所有按钮在右侧设置占位符,这样不会在运行时强制设置大小
将每个按钮设置为彼此等宽(选择全部并设置等宽)。然后,将宽度设置为占位符,然后在左右按钮上设置左右约束。然后在“中心”按钮上设置水平约束。然后为中心设置底部约束,并将左右垂直方向约束为中心按钮垂直方向
这与按钮宽度无关。确保设置了按钮之间的约束
运行时:
按钮宽度较小的示例:
设置中间按钮2
添加leftcontent视图和rightconent视图按钮2和左右空格
按钮1是内容的子项和中心
按钮2是右内容的子项和中心
可以设置如下所示的约束:
为所有3个相同的值指定Y位置
给他们每个人同等的高度
每个按钮的宽度相等
为superview的所有3个视图和2个边框视图之间提供零水平间距
这将使所有3个具有相同宽度和高度的空间相等检查此项,以与子空间的比例共享父空间。
如果按钮的宽度和高度都是固定的,这可能是一个解决方案。谢谢,这对我来说应该是可行的,我希望有某种方法可以做到这一点,而不需要增加创造性。左右边距的宽度是否应该与相邻按钮之间的间距相等?