如何将这四个按钮对齐到屏幕的差异大小的中心(水平和垂直)。当我在不同大小的模拟器中运行项目时,我看到按钮的大小和位置不同。有没有办法让所有设备的四个按钮位于中心(和相同的大小)?
我没有任何约束经验,自从我使用Xcode以来已经有一段时间了。我阅读了有关约会数小时的教程,但我仍然不了解如何使用它。
谢谢你,节日快乐:)
答案 0 :(得分:7)
实现此目的的最简单方法是使用UIStackView。使用非常简单,它可以自动管理按钮的布局。
删除按钮的现有约束,然后选择全部四个并选择编辑器 - >嵌入 - >堆栈视图。
添加两个约束以使视图中的堆栈视图居中,然后就完成了!
答案 1 :(得分:1)
是的,你可以使用Stack View,但只支持ios 9,所以如果你试图让ios 9以下的约束,请按照以下步骤 -
添加UIView作为按钮的容器,并向其添加以下约束。 (我们不会给这个视图赋予固定的高度限制,让它从本质上确定它的高度,即我们将使用按钮来确定容器的大小,因为按钮具有其固有的大小。)
一个。将中心X与超级视图对齐
湾将中心Y对齐到superView
℃。尾随和领先的空间
现在添加第一个按钮并添加以下约束 -
一个。中心水平居中。
湾来自superview的顶部空间(作为按钮并具有其内在尺寸,因此我们不需要给出高度和宽度,它将根据其内容计算)
现在,对于其余三个按钮,添加以下约束 -
一个。使用第一个按钮水平居中
湾使用各自的顶部和按钮视图(按钮)为所有按钮添加顶部和底部空间。对于最后一个按钮,即第4个按容器视图添加底部空间约束。
注意 - 现在顶部按钮具有容器视图的顶部空间约束,而最后一个按钮具有容器视图的底部空间约束,并且所有其余按钮通过顶部和底部空间相互连接,这将确定容器视图的高度和您的按钮将始终显示在所有尺寸的屏幕中央。
下面是截图的链接,其中包含上述所有必需的限制。