telefono simbolos simbolo significado porcentaje poner personalizar pantalla iconos flecha como bloqueo bateria iphone objective-c ios status statusbar

simbolos - simbolo telefono y flecha en iphone



Ocultar la barra de estado en el iPhone en una sola vista? (9)

Quiero mostrar la barra de estado en mi aplicación en todas las vistas excepto una. Intenté modificar la ''barra de estado inicialmente oculta'' en el plist, lo he intentado:

[[UIApplication sharedApplication] setStatusBarHidden:YES];

Eso oculta la barra pero deja una fea caja azul donde estaba la barra de estado (que no es parte de mi vista, no hay nada azul allí).

También intenté modificar el diseño, quería que la pantalla completa y la configuración de la barra de estado en el bit ''constructor de interfaz'' de Xcode 4.2.

¿Alguna sugerencia?

EDITAR - CLASIFICAR LA SOLUCIÓN:

Lo he hecho al incluir:

-(void)viewWillDisappear:(BOOL)animated{ [[UIApplication sharedApplication] setStatusBarHidden:YES]; } -(void)viewDidAppear:(BOOL)animated{ [[UIApplication sharedApplication] setStatusBarHidden:NO]; }

en cada una de las páginas en las que quiero que esté la barra de estado.

Todavía se ve entrecortado y basura porque la barra de pestañas aparece y reaparece cada vez que cambia de vista. Pero ya tuve suficiente, trabajé en este estúpido problema durante aproximadamente 5 horas, así que esto tendrá que hacer.

SEGUNDA EDICION

Se corrigió la fragilidad al incluir setStatusBarHidden = NO en viewWillAppears. Dios sabe cómo funciona todo pero lo hace.


Aquí hay un fragmento de código que podría ayudar. Cuando la vista carga muestra la barra de estado, cuando salga de la vista, vuelva a ocultarla.

-(void)viewWillAppear:(BOOL)animated { if([[UIApplication sharedApplication] respondsToSelector:@selector(setStatusBarHidden: withAnimation:)]) [[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:UIStatusBarAnimationFade]; else [[UIApplication sharedApplication] setStatusBarHidden:NO animated:YES]; } -(void)viewWillDisappear:(BOOL)animated { if([[UIApplication sharedApplication] respondsToSelector:@selector(setStatusBarHidden: withAnimation:)]) [[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade]; else [[UIApplication sharedApplication] setStatusBarHidden:YES animated:YES]; }


Esta es la solución si desea ocultar la barra de estado en una sola vista

- (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; [[UIApplication sharedApplication] setStatusBarHidden:YES]; [self.view sizeToFit]; }


La [[UIApplication sharedApplication] setStatusBarHidden:BOOL]; es suficiente, pero:

  1. Recuerde volver a establecerlo en NO antes de abandonar la vista o la página a la que regresa tendrá probablemente la barra de navegación debajo de la barra de estado.

  2. Asegúrese de configurar tanto la barra de estado ocultar y mostrar en la vista en la que desea ocultar la barra de estado. Desconecté el método viewDidLoad y, lo que es más importante , lo volví a activar en el método viewWillDisappear:animated . Más tarde y estás en problemas.


La solución de Kartik funcionó para mí.

[[UIApplication sharedApplication] setStatusBarHidden:YES];

viewWillAppear: esto para ver el viewWillAppear: instancia.

- (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; [[UIApplication sharedApplication] setStatusBarHidden:YES]; self.webView.scalesPageToFit = YES; [self.webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.google.co.uk"]]]; }

Y pasé eras en esto también. Usando Xcode 4.2, iOS5 sim.

Pero cuando lo implementé por primera vez, el molesto "espacio" en la parte superior estaba allí. Seleccioné el controlador de visualización en el guión gráfico y establecí las propiedades de la siguiente manera: Tamaño: pantalla completa Barra de estado: ninguna otra cosa inferida.

Verifiqué quiere pantalla completa.

Voila, todo funcionó bien.


Prueba este correrá perfectamente ...

[[UIApplication sharedApplication] setStatusBarHidden:YES];

Y en XIB, no estableció ninguna opción para la barra de estado.

para iOS 7.

Vaya a info.plist y agregue dos atributos si no está presente. establecer "La barra de estado se oculta inicialmente" a "SÍ" y establecer "UIViewControllerBasedStatusBarAppearance" en "NO". Esto ocultará la barra de estado de tu aplicación.


Sé que esta es una pregunta antigua, pero ninguna de estas respuestas funciona para mí, así que así es como me sirve para ocultar la barra de estado en una sola vistaController

Primero en tu ParentViewController tienes que establecer:

- (UIViewController *)childViewControllerForStatusBarHidden { if ( hideStatusBarViewController ) { return hideStatusBarViewController; } return nil }

Solo devuelve el controlador de vista hijo cuando se crea de lo contrario nil es el valor predeterminado. Cuando agrega su hideStatusBarViewController debe llamar

[self setNeedsStatusBarAppearanceUpdate];

en parentViewController, esta función obliga a leer childViewControllerForStatusBarHidden. Finalmente en hideStatusBarViewController debes establecer

- (BOOL)prefersStatusBarHidden { return YES; }

Es la única solución que funciona para mí. Espero que ayude a alguien.


Si hay alguien buscando una solución donde la solución anterior no funciona (y todavía hay un molesto espacio azul de 20px en la parte superior), intente poner esto en la vista Mostrar en el archivo de implementación del controlador de vista que le gustaría el estado bar para estar escondido

self.navigationController.navigationBar.frame = CGRectOffset(self.navigationController.navigationBar.frame, 0.0, -20.0);

Eso literalmente me llevó 12 horas arreglarlo, y esa era la solución, así que ahora estoy difundiendo la palabra por si alguien más tiene este problema molesto.


Sugeriría un enfoque diferente: inserte esa vista en la ventana de la aplicación:

YourUIAppDelegate *appDelegate = [UIApplication sharedApplication].delegate; [appDelegate.window insertSubview:self.yourView atIndex:([[appDelegate.window subviews]count])];

De esa forma se mostrará sobre la barra de estado

Espero que te ayude


#pragma mark - Hide statusbar -(void)hideStatusBar { #if __IPHONE_OS_VERSION_MIN_REQUIRED >= 70000 // iOS 7.0 or later [self setNeedsStatusBarAppearanceUpdate]; #else // less than 7 [[UIApplication sharedApplication] setStatusBarHidden:YES]; #endif } - (BOOL)prefersStatusBarHidden { return YES; }