iOS - 在横向模式下获取状态栏高度和宽度 0

iOS - Getting Status bar height & width 0 in landscape mode

当我尝试在 iPhoneX 中以横向模式打开应用程序时,我得到以下两个值 0。应该是 44 吧?因为无法点击汉堡

UIApplication.shared.statusBarFrame.size.height UIApplication.shared.statusBarFrame.size.width

横向模式下状态栏不显示(隐藏)@Mallikarjuna

您可以通过打印以下代码进行检查:

po view.window?.windowScene?.statusBarManager?.statusBarFrame.height

您可以使用 safeAreaInset 获取 44px 值

UIApplication.shared.windows.first?.safeAreaInsets.left // safeAreaInsets.left -> for your case

我们可以通过使用

来实现
window.safeAreaLayoutGuide.layoutFrame

例如:

let safeFrame = window.safeAreaLayoutGuide.layoutFrame;
let safeFrameHeight = safeFrame.origin.y;
let safeFrameWidth = safeFrame.origin.x;