Ось версія Swift (до iOS9):
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated)
UIApplication.sharedApplication().setStatusBarHidden(true, withAnimation: UIStatusBarAnimation.None)
}
override func viewWillDisappear(animated: Bool) {
super.viewWillDisappear(animated)
UIApplication.sharedApplication().setStatusBarHidden(false, withAnimation: UIStatusBarAnimation.None)
}
Це також працює (iOS7 +):
override func prefersStatusBarHidden() -> Bool {
return true
}
Вам також потрібно зателефонувати:
setNeedsStatusBarAppearanceUpdate()
у кажіть viewDidLoad()
.
Зауважте, що якщо ви використовуєте контролер SplitView або інший container
контролер перегляду, вам також потрібно, щоб він повернув свій клас після його надсилання childViewControllerForStatusBarHidden
. Один із способів зробити це - мати загальнодоступний слабкий варіант для висловлювання statusController
і повернути його у цьому переосмисленому методі.