2010-04-29 14 views
5

Tengo un proyecto de navegación que solo tiene una vista de tabla. De manera predeterminada, pude ver la barra de navegación allí cuando ejecuté la aplicación. Quiero cambiar el estilo de la barra de navegación al igual que si vemos en I.B hay una llamada "Barra superior" que tiene el estilo "Barra de navegación negra" (que muestra la barra negra de navegación superior pero algún tipo de sombra gris estará allí). Quiero lo mismo en mi barra de navegación ahora, no en cualquier otro color o estilo. ¿Cómo lo arreglo?iPhone: ¿Cómo hacer que el estilo de la barra superior de navegación sea lo mismo que "Barra de navegación negra" mediante programación?

Nota: 1. Utilicé "self.navigationController.navigationBar.barStyle = UIBarStyleBlack;" , pero muestra la barra de navegación en absoluto color negro. No quiero eso, quiero algún tipo de pantalla gris en negro, similar a "barra superior" que tiene "barra de navegación negra".

  1. He intentado algunas Además color de la tinta de lo anterior, como "self.navigationController.navigationBar.tintColor = [UIColor grayColor];" pero observo los mismos negros completos en la barra de navegación.

  2. Intenté "navigationBar.barStyle = UIBarStyleBlackTranslucent;" pero no se ajusta y se muestra con la barra de estado correctamente. En cambio, se superpone (oculto) medio negro con barra de estado y la mitad negro se muestra afuera.

¿Alguien podría enseñarme?

Gracias.

+0

sentimos "UIBarStyleBlackTranslucent;" no es lo que se esperaba. Quiero el mismo estilo de color, Abra I.B y marque "Barra superior" que tiene "Barra de navegación negra". (o) Ejecute su aplicación que ha configurado "Barra superior" con "Barra de navegación negra", se mostrará en color negro con un poco de sombra de color gris. – Getsy

+0

No estoy completamente seguro de lo que quiere decir, pero esto podría deberse a que el controlador de vista interna es opaco y transparente de manera diferente (el controlador de vista es visible a través del transparente) – cobbal

+0

Ok. Gracias. Intenté "navigationBar.barStyle = UIBarStyleBlackTranslucent;" pero no se ajusta a la barra de navegación correctamente y se muestra con la barra de estado allí. En su lugar, se superpone (oculta) con una barra de navegación negra de media parte con barra de estado y la otra mitad se muestra afuera en la parte superior. – Getsy

Respuesta

7
navigationBar.barStyle = UIBarStyleBlackTranslucent; 

(docs)

0
self.navigationController.navigationBar.tintColor = [UIColor blackColor]; 
+0

¿Por qué está esto downvoted? Esto tiene sus propios beneficios. –

6

respuesta completa ...

self.navigationController.navigationBar.barStyle = UIBarStyleBlackTranslucent; 
10

Como UIBarStyleBlackTranslucent está en desuso en IOS 3.0,
es mejor utilizar esas dos líneas:

self.navigationController.navigationBar.barStyle = UIBarStyleBlack; // optional 
self.navigationController.navigationBar.translucent = YES; 

Esto también le permite usar un color diferente al negro.

1
MyView *myView=[[MyView alloc]initWithNibName:@"myView" bundle:[NSBundle mainBundle]]; 
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:myView]; 
[nav.navigationBar setBarStyle:UIBarStyleBlackOpaque]; 
+0

lol tan fácil extraviado myView con nav –

0

En storyboard elegir Translucent Black Navigation Bar para Top Bar enter image description here

0

Swift 3:

self.navigationController?.navigationBar.barStyle = UIBarStyle.blackTranslucent 
Cuestiones relacionadas