10

我正在学习 xcode 6 中的约束和通用故事板,在这里遇到了一些困难。

使用 Universal Storyboard,我的目标是创建一个非常适合 iPad 模拟器(768 x 1024)和 iPhone 4 模拟器(_ x _)的 UIView,让我们说左右两侧有 50 像素的填充或边距。

目标应如下所示:

在此处输入图像描述

我正在使用通用故事板和自动布局,我在预览中得到以下结果 在此处输入图像描述

到目前为止我所做的只是将 UIView 拖入 Universal Storyboard 编辑器,然后给它一个填充 iPad 屏幕的宽度(768),然后应用宽度 = 768、高度 = 200 约束和中心约束水平和约束垂直居中。

观察结果:

iPad 屏幕完美填满宽度。然而,仔细看看我的 iPhone 屏幕(图 1),UIView(绿色)的宽度没有填充到父级(它的宽度比它的父级宽度大得多)

问题:

问题 1) 有没有办法使用 Universal Storyboard 创建一个 UIView,在 iPad 和 iPhone 上都将其宽度填充到其父 UIView?

问题 2)如果问题 1 可以实现,那么如何在绿色 UIView 左右添加填充或边距?

谢谢,如果有任何建议、意见或意见,我将不胜感激。

4

1 回答 1

12

Instead of using a width constraint, you want to be looking at Leading Space and Trailing Space constraints.

You'll want to add a Leading Space constraint from your green UIView to its superview and set that constraint's constant to the margin you want (50), and then do the same for Trailing Space. You should keep your height and center vertically constraints as is, but you can delete your center horizontally constraint since the Trailing Space and Leading Space constraints will handle centering your view already.

It should end up looking something like this:

constraint layout and preview UIView constraint setup

于 2014-08-14T06:27:38.653 回答