使用容器视图时的空白区域(取决于iOS版本的不同结果)

ins*_*man 5 ios autolayout uicontainerview

我这里有一个奇怪的错误.让我展示重现它的步骤:

  1. 新项目(单视图应用程序,Swift,通用).更改故事板以使用Compact Regular(所有iPhone)
  2. 将视图(我绘制橙色)和容器添加到视图控制器.
  3. 将约束设置为视图:固定高度(如100)并将前导,尾随和顶部设置为0(无边距).将约束设置为Container:Bottom,Leading和Trailing为0(无边距).在View和Container之间设置约束:Vertical Spacing - 0.
  4. 转到Container View Controller(自动创建).创建一个视图(我涂成蓝色).
  5. 将视图的限制设置为:顶部,前导,尾随和底部为0(无边距)
  6. 在iPhone 4s 8.3模拟器上运行该项目.然后在iPhone 4s 7.1模拟器中再次运行它,看到发生的空白错误.

这是我的故事板:

容器故事板

以下是8.3和7.1之间差异的一些屏幕截图:

iOS 8.3  - 问题不会发生iOS 7.1  - 问题发生:顶视图和容器之间的空白区域

我的疑问是:这个错误会在运行iOS 7.1的真实设备中发生吗?

PS.1:取消选中"调整滚动视图插入"不能解决问题.

PS.2:这个项目中没有导航和表格视图(看到一堆使用这些组件的类似问题,但这不是这里的情况).

小智 3

对于嵌入式视图控制器中的每个子视图,确保前导/尾随约束与第一个和第二个项目的边距无关。

在此输入图像描述