2012-06-20 39 views

Respuesta

14
[self.navigationController.navigationBar setBackgroundColor:[UIColor redColor]]; 

Trate de esta manera. Creo que será útil para ti.

Editar: actualizó el código para compilar realmente.

+0

no sé por qué, pero Xcode no aparece 'barTintColor' cuando lo escribo – fnc12

2

Puede usar la propiedad de tinte del UINavigationBar para cambiar su color. Compruebe esto article al respecto. También existe el UIAppearance, que le permite cambiar el fondo de cada UINavigationBar de su aplicación, que es bastante potente en mi opinión. Puede marcar this.

2

Puede ajustar el color de la tinta mediante el uso de navbar.tintColor = [UIColor redColor];

Véase la referencia aquí: apple docs

2

Prueba esto:

navigationBar.tintColor = [UIColor blackColor]; 
1

Usted puede personalizar un UINavigationBar con las siguientes propertys:

  • @property(nonatomic, assign) UIBarStyle barStyle
  • @property(nonatomic, retain) UIColor *tintColor
  • setBackgroundImage:forBarMetrics:
  • @property(nonatomic, copy) UIColor *backgroundColor

Para más métodos y propertys favor consulte la referencia de clase de UINavigationBar y UIView

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

Abajo votado porque es incorrecto. tintColor es el color que se usará para los colores del primer plano de los elementos del botón de barra, p. ej. el texto "posterior", el "cursor" posterior y cualquier otro texto de botón ... desea usar barTintColor para establecer el color bg de la barra. – n13

13

En el nuevo iOS esto como funciona:??

self.navigationController.navigationBar.barStyle = UIBarStyleBlackOpaque; 
self.navigationController.navigationBar.barTintColor =[UIColor colorAzulNavegacion]; 
+1

¡Esto funcionó para mí en iOS7! ¡Gracias! –

+0

UIBarStyleBlackOpaque está en desuso en iOS 9 – user1366265

2

self.navigationController .navigationBar.translucent = false

self.navigationController .navigationBar.barTintColor = UIColor.redColor()

self.navigationController? .navigationBar.barStyle = UIBarStyle.BlackTranslucent

+0

Básicamente correcto, excepto que BlackTranslucent está en desuso. – n13

6

Tengo que buscar esto cada vez para agregar mi respuesta aquí (Swift). El código siguiente establece esto para todas las barras de navegación en la aplicación. También puede establecer cada uno de estos en barras de navegación individuales si así lo desea.

Puede configurar la transparencia, el color del texto del título, el color de fondo (esto se llama barTintColor, gracias, Apple!), Y el color botón de la barra elemento plano, así:

// Title text color Black => Text appears in white 
    UINavigationBar.appearance().barStyle = UIBarStyle.Black 

    // Translucency; false == opaque 
    UINavigationBar.appearance().translucent = false 

    // BACKGROUND color of nav bar 
    UINavigationBar.appearance().barTintColor = UIColor.redColor() 

    // Foreground color of bar button item text, e.g. "< Back", "Done", and so on. 
    UINavigationBar.appearance().tintColor = UIColor.whiteColor() 
+0

Esto debería ser seleccionado como la mejor respuesta – duan

Cuestiones relacionadas