导航控制器下SuperView.top的顶级约束

时间:2016-11-28 17:46:19

标签: ios autolayout

我正在尝试获取全屏高度,包括我的ViewController中的状态栏,其父级为Navigation Controller(没有Navigation Bar)。 ViewController包含ScrollView(红色背景)及其内容视图(绿色背景)。没有Navigation Controller,它会按预期工作。这是它的样子:

enter image description here

但是,只要我将Navigation Controller添加为父级,就会显示:

enter image description here

以下是我的AutoLayout约束:

enter image description here

1 个答案:

答案 0 :(得分:1)

我试图在iOS 9中复制你的场景并进行测试。不会遇到你提到的问题。我没有看到任何地方的红色。这是故事板。

Storyboard

即使您出于其他原因仍然遇到此问题,您也可以, 如Yaman所述,您可以使用常量-20更改顶部约束,以使滚动视图位于状态栏下方并覆盖整个屏幕。然后,如果您愿意,可以设置UIScrollView contentInset属性,使其顶部向下移动20个点。

scrollView.contentInset.top = 20

这将使可滚动内容在滚动的上边缘下方移动20个点。