2009-09-10 28 views
31

enlace eliminado ImageShack muertosCómo ajustar la barra de navegación del color de la barra de pestañas del menú Configurar

Como se puede ver la vista que tengo que cambiar es la vista que proporcionan a personalizar el orden de barra de pestañas. Quiero cambiar el color de la barra de navegación (que muestra "Konfigurieren" que significa "Configurar"), ya he descubierto cómo cambiar el color del "Más" Controlador de navegación, pero no este. ¿Alguien me puede ayudar con eso?

+0

Sí. Me gustaría saber eso también. Lo intenté durante varios días, pero no pude hacerlo funcionar ... – Jake

+0

No podemos ver, realmente, ya que su enlace de imagen parece estar roto. Si aún tiene la imagen original, vuelva a cargarla en stack.imgur, o simplemente edite su pregunta para que funcione sin la imagen. Gracias. –

Respuesta

15

Uso int AppDelegate

tabBarController.moreNavigationController.navigationBar.tintColor = [UIColor blackColor]; 
+8

No sé por qué se aceptó esta respuesta: solo cambia el color del tono de la barra de navegación de la pestaña "Más" (que el autor de la pregunta dijo que ya logró) pero no el del controlador de vista modal "Personalizar". La respuesta de user486217 hace lo correcto que se solicitó. –

20

Creo que lo que busca es la siguiente (hay que hacer cuando se crea el controlador de navegación, por lo general en el delegado de la aplicación):

UINavigationController *navigationController; 
... 
navigationController.navigationBar.tintColor = [UIColor blackColor]; 
14

Su Seguramente va ¡trabajo! :-)

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

¡Respuesta simple pero genial! Gracias. – Will

+0

Si hermano ... funciona como encantador ... –

3

yo era capaz de cambiar el color de la barra de navegación Configurar como esto:

  1. crear una nueva clase que hereda de UITabBarController.
  2. implementar este método:

    -(void)beginCustomizingTabBar:(id)sender 
    { 
        [super beginCustomizingTabBar:sender]; 
    
        // Get the new view inserted by the method called above 
        id modalViewCtrl = [[[self view] subviews] objectAtIndex:1]; 
    
        if([modalViewCtrl isKindOfClass:NSClassFromString(@"UITabBarCustomizeView")] == YES) 
        { 
         UINavigationBar* navBar = [[modalViewCtrl subviews] objectAtIndex:0]; 
    
         [navBar setBarStyle:UIBarStyleBlackTranslucent]; 
         [navBar setTranslucent:YES]; 
        } 
    } 
    
12

puede ser más fácil (uso en delegado de la barra de pestañas):

- (void)tabBarController:(UITabBarController *)tabBarController willBeginCustomizingViewControllers:(NSArray *)viewControllers { 
id modalViewCtrl = [[[tabBarController view] subviews] objectAtIndex:1]; 
if([modalViewCtrl isKindOfClass:NSClassFromString(@"UITabBarCustomizeView")] == YES) 
    ((UINavigationBar*)[[modalViewCtrl subviews] objectAtIndex:0]).tintColor = [UIColor redColor]; 
} 
2

edificio fuera de la respuesta dada por user486217, esto puede ser aún más código defensivo:

 
id modalViewCtrl = [controller.view.subviews objectAtIndex:1]; 
if([modalViewCtrl isKindOfClass:NSClassFromStrin(@"UITabBarCustomizeView")] == YES) { 
    id navigationBar = [[modalViewCtrl subviews] objectAtIndex:0]; 
    if ([navigationBar isKindOfClass:[UINavigationBar class]]) { 
     ((UINavigationBar*)navigationBar).tintColor = [UIColor redColor]; 
    } 
}} 
7

Hay un manera fácil de cambiar todos los estilos de barra de navegación en lugar de cambiar cada uno por separado.

[[UINavigationBar appearance] setBarStyle:UIBarStyleBlack]; 

Simplemente configure este código en una de sus vistas iniciales. Con esto, su controlador de navegación más y el controlador de navegación de configuración (que aparece después de hacer clic en "Editar" en más controlador de navegación) obtienen un estilo diferente.

De esta manera puedes cambiar el color a otro color diferente o cambiar la imagen de fondo.

Espero que esto ayude.

1

Si está buscando los colores estándar (gris, negro, blanco), puede establecer estos valores dentro de xCode 5. Seleccione todo el controlador de vista y seleccione el inspector de atributos. Debajo de los atributos, encontrará un menú desplegable junto a "Barra superior". Allí puede seleccionar varias configuraciones de color y opacidad para el controlador de la barra de navegación.

A continuación se detallan algunas capturas de pantalla. ¡Espero que esto ayude!

enter image description here

enter image description here

Cuestiones relacionadas