没有状态栏的NavigationBar与iOS11中的safearea重叠

Pab*_*nez 1 iphone ios ios11 safearealayoutguide

iOS11中有一个iPhoneX模拟器有问题.

我有一个没有状态栏的viewcontroller.要做到这一点,我添加:

- (BOOL)prefersStatusBarHidden {
    return YES;
}
Run Code Online (Sandbox Code Playgroud)

到目前为止它还不错,但导航栏与iPhoneX中的safearea重叠.

在此输入图像描述

我怎样才能解决这个问题?

Pab*_*nez 5

最后解决方案正在使用 safeAreaInsets

if (@available(iOS 11.0, *)) {
        UIEdgeInsets safeInsets = UIApplication.sharedApplication.delegate.window.safeAreaInsets;
        paddingTop = safeInsets.top;
}
Run Code Online (Sandbox Code Playgroud)

您可以以编程方式或使用autolayout执行此操作

在此输入图像描述 在此输入图像描述