How to hide status bar of a single view controller in iOS 9?

后端 未结 15 1275
挽巷
挽巷 2020-12-13 06:15

In a ViewController, which I presented modally, I did this:

override func prefersStatusBarHidden() -> Bool {
    return true
}

This used

15条回答
  •  醉酒成梦
    2020-12-13 06:51

    You can use

    override public func viewWillAppear(animated: Bool) {
        super.viewWillAppear(animated)
        // hide status bar
        dispatch_async(dispatch_get_main_queue(), {
            if let window = UIApplication.sharedApplication().keyWindow {
                window.windowLevel = UIWindowLevelStatusBar + 1
            }
        })
    
    }
    
    override public func viewWillDisappear(animated: Bool) {
        super.viewWillDisappear(animated)
        // Show status bar
        dispatch_async(dispatch_get_main_queue(), {
            if let window = UIApplication.sharedApplication().keyWindow {
                window.windowLevel = UIWindowLevelNormal
            }
        })
    
    }
    

提交回复
热议问题