自动布局:Xcode 6:居中UI元素

che*_*ead 10 iphone xcode ios autolayout

我正在使用Xcode 6中的Interface Builder来制作应用程序,并且无法将文本字段和按钮放在屏幕中央以用于不同大小的屏幕.

我认为这是在容器中选择水平和垂直居中的问题,但是当我在自动布局中尝试它时似乎并不是这样.实际上我已经修改了一下,我还没有得到它.

我只是希望能够看到任何大小的iPhone屏幕的所有按钮和文本字段,现在模拟器只显示这些UI元素的一部分,如下所示:

在iPhone 6模拟器中查看

我也想在故事板中而不是在代码中执行此操作,因为我还没有在代码中执行此操作.

Nat*_*sha 12

步骤1:确保您的尺寸等级至少在纵向视图中覆盖所有iPhone屏幕.因此,将size类更改为"wCompact hRegular".

步骤2:正确设置大小类后,将UITextFields和UIButton添加到故事板.对我来说,它看起来像 -

在此输入图像描述

第3步:之前,你开始添加约束,你需要记住两件事 -

一个.你的元素(UITextField,UIButton,UIView或任何组件)需要明确地知道它的起始位置,并且

湾 您的元素需要知道它的大小含义,高度和宽度.

在这种情况下,当您想要将元素居中时,我只是假设它需要从左边缘开始以10刻度为中心,并且应该从iPhone屏幕的右边缘开始10个刻度.现在,这意味着,它的宽度将根据屏幕尺寸而有所不同,但其高度将相同.

所以,我只是为第一个文本框添加以下方式的约束 -

在此输入图像描述

请注意,在尺寸检查器中,我设置文本框的起点x和宽度,使其距离左边缘10 pt,距右边缘10 pt.别担心,这只是简单的数学.

对于第二个textField,我添加约束,同样的方式 -

在此输入图像描述

最后,对于按钮,约束如下 -

在此输入图像描述

现在,你很高兴.一切都集中在一起.

希望这可以帮助.

  • 我想哭.我认为android的XML布局太可怕了. (12认同)