Iphone Swift 3 |无法隐藏ViewController上的状态栏

Iphone Swift 3 |无法隐藏ViewController上的状态栏,iphone,swift3,ios10,statusbar,Iphone,Swift3,Ios10,Statusbar,我只想在纵向模式下显示状态栏,当我旋转屏幕时,状态栏会按预期隐藏,但如果我按下/显示新的视图控制器,状态栏会再次出现 我尝试了以下方法但没有成功: 在info.plist文件中将查看基于控制器的状态栏外观设置为NO 在self和NavigationController上使用setNeedssStatusBarAppearanceUpdate() 将首选StatusBarHidden:Bool设置为true 还尝试了UIApplication.shared.setStatusBarHidden(

我只想在纵向模式下显示状态栏,当我旋转屏幕时,状态栏会按预期隐藏,但如果我按下/显示新的视图控制器,状态栏会再次出现

我尝试了以下方法但没有成功:

  • info.plist
    文件中将
    查看基于控制器的状态栏外观设置为
    NO
  • self
    NavigationController上使用
    setNeedssStatusBarAppearanceUpdate()
  • 首选StatusBarHidden:Bool
    设置为
    true
  • 还尝试了
    UIApplication.shared.setStatusBarHidden(true,带有:UIStatusBarAnimation.none)
  • 还扩展了NavigationController

任何帮助都将不胜感激。谢谢

尝试以下代码

override var prefersStatusBarHidden: Bool {

    if UIDevice.current.orientation.isPortrait{
        return false
    }
    return true
}

可能是Nope的复制品,它们暗示了我已经尝试过但不适用于我的东西。无论如何谢谢你!除了代码之外,你能解释一下这是如何解决这个问题的吗?ThanksI已经在主viewController中编写了此代码,并且在info.plist中将基于视图控制器的状态栏外观设置为NO,当我在导航后返回主viewController时,根据横向和纵向模式,其工作正常@JalpaJani,这就是我正在做的,但我确实缩短了我的问题,只是为了阅读的目的“prefersStatusBarHidden:Bool to true”,不过还是要谢谢你!