iphoneX not call prefersStatusBarHidden

被刻印的时光 ゝ 提交于 2019-12-07 04:56:43

问题


info.plist

<key>UIViewControllerBasedStatusBarAppearance</key>
    <true/>

UIViewController

override var prefersStatusBarHidden: Bool{
        return true
   }

when i use 6p ,it's ok but
iphoneX ,it's can't call and StatusBar not hidden


回答1:


You need to check if your view controller is included in a container (i.e. UINavigationController). If that is the case, the full procedure is this:

1) Set the View controller-based status bar appearance value in info.plist file to YES

2) In your child controller add this code:

override var prefersStatusBarHidden: Bool{
        return true
   }

3) Add this extension:

// gives control of the status bar appearance to the top controller
extension UINavigationController {
    override open var childViewControllerForStatusBarHidden: UIViewController? {
        return self.topViewController
    }
}

You already have point 1 and 2. Same logic applies to UITabBarController



来源:https://stackoverflow.com/questions/50714171/iphonex-not-call-prefersstatusbarhidden

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!