ios - Swift 3 - 使用全屏时如何隐藏状态栏

标签 ios swift modal-dialog segue

我正在开发一个 swift 应用程序,当我在我的模态上使用全屏显示时,我找不到如何隐藏状态栏。

但是,我将这行代码放在我的模态视图 Controller 中:

override var prefersStatusBarHidden: Bool {
    return true
}

如果我创建一个非模态的 segue,或者如果我创建一个模态的 segue 但不是 Over Full Screen 演示文稿,它会起作用。

我在网上搜索如何修复它,我找到了同样问题但没有解决方案的人。

此外,当我使用全屏选项时,我无法更改状态栏的颜色。我不明白为什么?我认为这是相关的。

感谢您的帮助!

最佳答案

要在全屏模态时隐藏状态栏,需要在 viewDidLoad 中设置:

override func viewDidLoad() {
    super.viewDidLoad()    
    modalPresentationCapturesStatusBarAppearance = true
}

然后执行隐藏状态栏的标准方法:

override var prefersStatusBarHidden: Bool {
    return true
}

关于ios - Swift 3 - 使用全屏时如何隐藏状态栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43088920/

相关文章:

ios - 如何正确使用计时器来错开向 subview 添加对象?

javascript - 使用 jQuery 显示 2 个模态窗口

delphi - 如何将模态对话框保持在动态创建的表单之上? (CreateParams - 覆盖)

iOS/Obj-C - 更改对相机文本的请求访问权限?

ios - 为什么 contentView 在 scrollView 中有一个 y 偏移量

swift - "compute"值有成语吗?

javascript - 未捕获的类型错误 : Cannot read property 'openModal' of undefined at onClick React

ios - 未发送 native FCM iOS推送通知

ios - AWS CognitoID 与 AWS session token

objective-c - 从某些 Swift 类中排除 Objective C 类别