No se puede ocultar la barra de estado-Swift 3,

Normalmente escondo la barra de estado con

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

pero Xcode me está dando un error, diciendo “El método no anula nada de su superclase”.

Si elimino la override , Xcode da un error diferente: “Método” prefiereStatusBarHidden () con el selector Objective-C ‘prefersStatusBarHidden’ entra en conflicto con getter para ‘prefiereStatusBarHidden’ de la superclase ‘UIViewController’ con el mismo selector Objective-C ”


También tengo “Ocultar barra de estado” marcada en la configuración general de mi destino:

enter image description here

pero la barra de estado todavía aparece.


Encontré este método en otra respuesta de desbordamiento de stack

 UIApplication.shared.setStatusBarHidden(true, with: .none) 

pero eso no oculta la barra de estado tampoco.


En Xcode 8 Beta 1, utilicé los métodos primero y segundo, que funcionaron para ocultar la barra de estado (el primer método no devolvió un error). ¿Qué puedo hacer ahora para ocultar la barra de estado con Xcode 8 Beta 4?

Nota: La barra de estado se muestra en dispositivos simuladores y dispositivos físicos, todos ejecutan iOS 10.

Necesitamos anular la propiedad en Swift 3 (esto es nuevo en Xcode 8 Beta 4):

 override var prefersStatusBarHidden: Bool { return true } 

para otro ejemplo también puede obtener aquí y aquí

Para obtener más información sobre este cambio y por qué es necesario, consulte la excelente respuesta de Matt al respecto .