【问题标题】:Cannot hide status bar in IOS 13无法在 IOS 13 中隐藏状态栏
【发布时间】:2019-10-04 12:21:46
【问题描述】:
在 IOS 11 和 12 中我使用过
[[[UIApplication sharedApplication] valueForKey:@"statusBarWindow"] valueForKey:@"statusBar"]
通过改变高度来隐藏状态栏。在 IOS 13 中,使用 statusBarManager 可以获得 statusBarFrame 并更改高度,但在视图中不会更改。有谁知道如何更改 IOS 13 中的状态栏框架?
【问题讨论】:
标签:
statusbar
ios13
uistatusbar
【解决方案1】:
如果您只需要状态栏框架来显示/隐藏它,有更正确的方法可以通过覆盖感兴趣的视图控制器的var prefersStatusBarHidden: Bool 来实现
请查看我的回答 here 以获得更详细的解释。
不过,如果您出于任何其他原因仍需要状态栏框架,您可以在 View Controller 中获取它,例如 this
let statusBarManager = view.window?.windowScene?.statusBarManager
let height = statusBarManager?.statusBarFrame.height ?? 0