2009-05-23 12 views
10

Estoy bastante seguro de haber tomado todas las medidas necesarias para configurar correctamente mi barra de estado. Hice esto tanto en el archivo info.plist (estableciendo un UIStatusBarHidden a un valor lógico VERDADERO), así como en el método applicationDidFinishLaunching en el Delegado Aplicación que utiliza:¿Por qué se muestra la barra de estado STILL durante Default.png?

[[UIApplication sharedApplication] setStatusBarHidden:YES animated:NO]; 

Y la barra de estado se esconde - no sólo rápida suficiente. A pesar de los pasos anteriores, cuando se inicia la aplicación, la barra de estado STILL sigue siendo visualizada durante aproximadamente un segundo durante la visualización de la imagen predeterminada Default.png. Parece hortera, y quiero asegurarme de que la barra de estado no se muestre en ningún momento durante la ejecución de la aplicación.

Muchas aplicaciones que he probado ESTÁN ocultando la barra de estado con éxito (ni siquiera aparece durante la visualización de default.png) pero no puedo entender cómo. ¿Alguien lidia con este problema antes?

Respuesta

17

¿Ya entendiste esto? Lo que hice para que funcione es editar el archivo Info.plist en TextMate en lugar de en Xcode. He añadido las dos líneas siguientes:

 
<key>UIStatusBarHidden</key> 
<true/> 

Creo que la única cosa diferente de las respuestas dadas anteriormente es que he usado un editor de texto en lugar de Xcode. Cuando posteriormente veas Info.plist en Xcode, verás una marca de verificación junto a UIStatusBarHidden en lugar de una cadena. Probablemente haya una forma de hacerlo directamente en Xcode, pero no sé qué es.

+0

Hola. Nunca resolví el problema con la barra de estado, pero parecía corregirse una vez que ajustaba/instalaba 3.0. Ahora no hay problemas – RexOnRoids

+0

La forma en que lo configura en Xcode es abrir el plist, agregar la entrada, presionar la tecla control sobre el elemento en el editor plist, seleccionar Value Type -> Boolean en el menú emergente, THEN establecer el valor. –

+0

Artículo sobre el mismo, repasa todo: http://iphonedevelopertips.com/user-interface/gotcha-hiding-the-status-bar.html –

8

UIStatusBarHidden debe establecerse en verdadero.

+0

estoy seguro de que los downvotes están viniendo. No hay necesidad de un compromiso, el póster original estuvo muy cerca de la solución real. Como se indicó en la pregunta original "Hice esto en el archivo info.plist (estableciendo un UIStatusBarHidden en un booleano FALSE)". Todo lo que necesita hacer es establecer la propiedad plist "UIStatusBarHidden" en TRUE en lugar de FALSE. Eso asegurará que la barra de estado esté * siempre * oculta, incluso cuando se muestre Default.png. – sroske

+0

Los votos abajo se deben a que la solución propuesta no tiene nada que ver con la pregunta original. –

+0

Erm - OK, así que ahora estoy en falta. Ni siquiera leí tu comentario lo suficiente. Un voto arriba de mí, parece que realmente tienes una solución. Debería haber puesto más información en su respuesta, diciendo que debe ser un par clave-valor de Info.plist. –

1

He visto esto en dispositivos con Jailbreak utilizando IOS 2.1 con una versión anterior de Cydia. En ese caso, una vez que se actualizó Cydia, funcionó el método info.plist + ... statusBarHidden = YES.

Ver alternativamente si [application setStatusBarStyle: ...] ayuda.

-isdi-

1

que estaba viendo un problema similar en un iPod Touch 2G (3.1.3), donde un rectángulo negro - mismas dimensiones que la barra de estado - se muestra por encima de la Default.png.

La solución a este problema consistía en hacer la imagen predeterminada.png 320x480 en comparación con su original 640x960. La solución exacta era hacer un [email protected] usando las dimensiones más grandes.

5

en la info.plist también hay una clave llamada "La barra de estado está inicialmente oculta" que debe verificarse. Ocultará la barra de estado mientras carga el archivo predeterminado.png

+0

+1 Esta es la respuesta real, que permite que la barra de estado se muestre nuevamente en algún momento más adelante en la aplicación. – luvieere

5

Es más fácil que eso. Al menos en Xcode 4 puede simplemente agregar una entrada "La barra de estado está inicialmente oculta" al plist y establecer su valor a YES.

status bar entry in plist

Cuestiones relacionadas