info - ¿Cómo podemos configurar el estilo de contenido claro de la barra de estado en iOS 9 para toda la aplicación?
status bar white ios 11 (2)
Quiero aplicar estilo Light Content a toda la aplicación.
El siguiente método está en desuso en iOS 9 sin el método de reemplazo.
-setStatusBarStyle: animado:
Establece el estilo de la barra de estado, animando opcionalmente la transición al nuevo estilo.
Está trabajando en AppDelegate
como:
Swift 1.2 Código:
UIApplication.sharedApplication().setStatusBarStyle(UIStatusBarStyle.LightContent, animated: true)
Pero cuando actualizo mi proyecto a iOS 9 / Swift 2, me están dando un mensaje de advertencia sobre:
<Error>: CGContextSaveGState: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
<Error>: CGContextTranslateCTM: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
<Error>: CGContextRestoreGState: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
Así que según la solución del foro de Apple y de esta respuesta CGContextSaveGState: contexto inválido Error 0x0 solo en el dispositivo
Por lo tanto, UIViewControllerBasedStatusBarAppearance
la propiedad UIViewControllerBasedStatusBarAppearance
del archivo info.plist
según la solución.
Ahora la situación es la siguiente: ¿cómo podemos establecer el estilo de contenido claro de la barra de estado en iOS 9 para toda la aplicación?
Del foro:
No quiero configurar el contenido de luz para todas y cada una de las vistas.
¿Alguna sugerencia?
Objective-C debería tener el mismo problema.
Puede ahorrarse mucho trabajo utilizando un UINavigationController y configurando barStyle de su barra de barStyle
en .Black
. Sólo tienes que hacerlo una vez; puedes hacerlo en el editor de guiones gráficos.
Esto automáticamente convertirá el estilo de su barra de estado a .LightContent
siempre que este UINavigationController esté en comando.
También puede usar: UIApplication.shared.statusBarStyle = .lightContent. También funciona en swift3.