如何使用xcode 6中的通用故事板为uiview的宽度适合父视图的宽度和iphone和ipad的一些填充?

时间:2014-08-14 06:02:47

标签: storyboard uistoryboard universal-storyboard

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

使用通用故事板, 我的目标是创建一个完全适合iPad模拟器(768 x 1024)和iPhone 4模拟器( _ x _ )的UIView,左边和右边可以说50像素填充或边距。

目标应如下所示:

enter image description here

我正在使用通用故事板和自动布局,我在预览中得到以下结果 enter image description here

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

观察结果:

IPad屏幕完美填充宽度。然而仔细看看我的iPhone屏幕(图1),UIView(绿色)的宽度不会填充到父级(其宽度远大于其父级宽度)

问题:

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

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

感谢,并感谢任何建议,意见或建议。

1 个答案:

答案 0 :(得分:11)

您希望查看widthLeading Space约束,而不是使用Trailing Space约束。

您需要将绿色Leading Space中的UIView约束添加到其超级视图,并将该约束的常量设置为您想要的边距(50),然后执行相同操作为Trailing Space。您应该保留heightcenter vertically约束,但是您可以删除center horizontally约束,因为Trailing SpaceLeading Space约束将处理您的视图居中

最终应该看起来像这样:

constraint layout and preview UIView constraint setup