xCode 6 beta 7:故事板在左右两侧增加了额外的空间

时间:2014-09-06 15:50:37

标签: ios storyboard autolayout uistoryboard xcode6

当我将子视图添加到根ViewController的视图,并且使用自动布局设置leadingSpace,trailingSpace,topSpace和bottomSpace为零时,左右两侧会出现一些额外的空格(所以如果我打印子视图的帧,它的原点将是16并且尺寸小于32应该是)。 所以实际上我们得到的前导和尾随空格不是零...

enter image description here

正如您在图片前导空格中看到的那样 - 零,但是origin.x = 16

早些时候我没有努力使用自动布局,所以我的问题是: 这是新xCode或功能的错误吗?

P.S。所有帧和约束都已更新。

1 个答案:

答案 0 :(得分:120)

iOS 8将“content margins”的概念添加到UIView“What's New in Cocoa Touch” video from WWDC 2014讨论内容边距(标题为“自适应边距”),从大约1230秒开始。

默认边距为每边8个点。布局约束的每一端都可以相对于视图的边距而不是视图的真实边缘(使用文件>快速打开以转到NSLayoutAttribute的定义以查看可能性)。

您的约束是“相对于保证金”。使用“添加新约束”弹出框创建约束时,可以选择是否为边距相对:

constraint-popover

它始终默认为保证金相对;如果您不希望它们与边距相关,则每次添加约束时都必须关闭复选框。

在屏幕截图的快速编辑弹出框中,您无法更改约束是否为边距相对。而是,双击约束以显示其完整的属性检查器。在那里,您可以使用弹出菜单为约束的每一端选择是否为边距相对:

constraint-attributes