iPhone X 状态栏高度



我开发了一个没有autoLayoutinterface-builder的应用程序,都是通过代码。它在所有iPhones中运行正常,除了顶部栏停留在中间新的黑色物体下方iPhone X

可以通过代码获得该高度,因此我可以将Navigationbar该高度向下移动并且所有正常运行?

我看到的解决方案,他们使用自动布局。

我只是想得到距离来移动它..

在我的 Swift 应用程序中,我得到状态栏的frame

斯威夫特:UIApplication.shared.statusBarFrame

目标C:[UIApplication sharedApplication].statusBarFrame

这是一个CGRect,所以你可以通过做size.height来获得它的高度。所以,总的来说,你可以在Objective-C中做到这一点:

[UIApplication sharedApplication].statusBarFrame.size.height

您始终可以通过以下方式获取状态栏高度,无论是否隐藏状态栏:

UIApplication.shared.keyWindow!.safeAreaInsets.top

和主屏幕指示器

UIApplication.shared.keyWindow!.safeAreaInsets.bottom

如果是景观,价值会改变

还有safeAreaLayoutGuide

最新更新