En mi aplicación de video iOS, la barra de estado está oculta en algunos controladores de vista. He hecho esto usando el siguiente código.
[[UIApplication sharedApplication] setStatusBarHidden:YES];
Funciona para iOS 5 e iOS 6, pero no en iOS 7.
Lo intenté con este controlador de vista en particular,
P.ej:
-(BOOL)prefersStatusBarHidden { return YES; }
Funciona bien, pero no puedo mostrar la barra de estado nuevamente en el controlador de vista principal.
Respuestas:
Debe agregar este valor a plist: " Ver la apariencia de la barra de estado basada en el controlador " y configurarlo en " NO ".
fuente
UIViewControllerBasedStatusBarAppearance
"View controller-based status bar appearance" set it to "YES".
?Agregue lo siguiente a su Info.plist:
fuente
Añadir la siguiente línea en viewdidload
y agregar un nuevo método
también cambie el archivo info.plist Vea la apariencia de la barra de estado basada en el controlador "= NO
me funciona
fuente
prefersStatusBarHidden
es lo que me sirvió (ya sea con esta solución o con otras similares)En el Plist agregue las siguientes propiedades.
ahora la barra de estado estará oculta.
fuente
Prueba este método simple:
C objetivo:
Rápido:
fuente
UIStatusBarAnimation
s, son geniales.[super viewWillAppear:animated]
y[super viewWillDisappear:animated]
Hice lo siguiente y parece funcionar (incluso en iOS 8):
fuente
Pero se vuelve más interesante cuando hay un UINavigationController involucrado:
fuente
Para ocultar la barra de estado en iOS7 necesita 2 líneas de código
en la aplicación: (UIApplication *) la aplicación didFinishLaunchingWithOptions: (NSDictionary *) launchOptions write
en info.plist agregue esto
fuente
Para una mejor comprensión, agregue algunas fotos con comentarios:
Aplicación antes de cualquier cambio
Encontrado en su
Project Navigator
carpeta llamadaSupporting Files
y haga clic en el archivo * .plistDespués de que se muestre la configuración diferente de su aplicación. Necesita agregar 2 teclas
UIStatusBarHidden
yUIViewControllerBasedStatusBarAppearance
. Puede hacer esto simplemente haciendo clic en el botón +Después de presionar +, puede elegir una de las teclas, simplemente comience a escribir.
Versión correcta:
Y finalmente la aplicación después de aplicar estos cambios:
Además, puede encontrar una solución alternativa aquí.
fuente
En iOS10, todo lo que necesitaba hacer era anular la
prefersStatusBarHidden
var en miRootViewController
(Swift):fuente
Trata eso;
fuente
Para ocultar su barra de estado en iOS7:
Abra su archivo plist, luego agregue una fila agregada llamada "Ver la apariencia de la barra de estado basada en el controlador" y establezca su valor en
NO
.fuente
Aquí está la versión Swift (anterior a iOS9):
Esto también funciona (iOS7 +):
También necesita llamar:
en decir
viewDidLoad()
.Tenga en cuenta que si usa un controlador SplitView, o algún otro
container
controlador de vista, también necesita que devuelva su clase cuando se envíechildViewControllerForStatusBarHidden
. Una forma de hacerlo es tener una var pública débil, por ejemplostatusController
, y devolverla en este método anulado.fuente
iOS 9 en adelante:
Como el
statusBarHidden
método fue obsoleto de iOS9 , debe agregar dos valores en plist como se muestra a continuación:o por interfaz de usuario Por favor, consulte la imagen de abajo:
Como
statusBarHidden
se desuso desde iOS9 :fuente
SOLUCIÓN FIJA PARA SWIFT 3+ (iOS 9, 10)
1- En info.plist establecido debajo de la propiedad
2- Pega el siguiente código en el controlador raíz, a
Puedes llamar
isStatusBarHidden = true
yisStatusBarHidden = false
donde quieras a lahide/show
barra de estadofuente
Debe agregar este valor a plist: "Ver la apariencia de la barra de estado basada en el controlador" y configurarlo en "NO".
fuente
Pasos para ocultar la barra de estado en iOS
1. Abra el archivo AppDelegate.m , agregue application.statusBarHidden en el método didFinishLaunchingWithOptions
View controller-based status bar appearance
conjuntoNO
fuente
Swift 5
Utilice los siguientes pasos para ocultar la barra de estado de iOS:
Captura de pantalla de configuración final:
Esto está funcionando en Xcode 10.2
fuente
De
UIKit
>UIApplication.h
:Por lo tanto, debe establecer
View controller-based status bar appearance
en NOfuente
Para responder la pregunta de Susitha: use setNeedsStatusBarAppearanceUpdate . Esto hará una llamada a prefiereStatusBarHidden para actualizar con el estado deseado de la barra de estado. Prueba esto:
Si desea volver a ver la barra de estado, configure su propiedad hideStatusBar (o como lo llame) en NO. Llame a preferStatusBarHidden indirectamente haciendo otra llamada a
fuente
Actualización para Swift 3:
Actualice Info.plist con la siguiente información:
View controller-based status bar appearance: NO
Luego, en un ViewController o en otro lugar:
UIApplication.shared.isStatusBarHidden = true
fuente