2011-07-24 49 views
13

he cambiado de color de la barra de navegación a través del siguiente códigoObjetivo C: ¿Cómo cambiar el color del texto en la barra de navegación

navconFvc.navigationBar.tintColor = [UIColor colorWithHexString:@"faf6f5"]; 

El código funcionó, pero el color del texto también necesita ser cambiado (ver imagen abajo). También el logotipo del botón de actualización a la derecha se ve afectada, así

enter image description here

El mismo problema se produce si puedo navegar a otra página en la pila

enter image description here

Pregunta: ¿Cómo puedo cambiar la color del texto del título

  • Ba ck button text y
  • barra derecha icono de color?

Después de que cambié el color de fondo de la barra de navegación?

Respuesta

15

Para el título aquí es la forma:

iPhone Navigation Bar Title text color

Y para los botones de encargo Aquí está la forma:

adding buttons to ui navigation controller bottom bar

+1

Rincón-Fadul, gracias por los enlaces, el primer enlace funciona bien para mí. Sin embargo, todavía no estoy seguro de cómo puedo cambiar el color del texto o el color del icono del botón. Para icono, probablemente pueda cambiar la imagen directamente. Pero, ¿qué pasa con el color del texto del botón de retroceso, por ejemplo? El enlace realmente no explica sobre esa parte – Zhen

+0

Respuesta anterior, use la de @ Erwan – Zeb

1

simplemente he creado un simple UIViewController subclase que añade un personalizable botón de retroceso que le permite cambiar los colores del texto. Básicamente, agrega un poco de lógica willAppear/willDisappear para animar el botón de retroceso como lo hace el UINavigationController al usar la propiedad leftBarButtonItem. Puede ampliar esto para que también haga lo mismo con BarButtomItem.

https://github.com/typeoneerror/BBCustomBackButtonViewController

6

Para cambiar el color del texto:

_navController.navigationBar.titleTextAttributes 
     = @{UITextAttributeTextColor : [UIColor blackColor]}; 

Agregando el botón de actualización y colorearlo:

UIBarButtonItem *button = [[UIBarButtonItem alloc] 
     initWithBarButtonSystemItem:UIBarButtonSystemItemRefresh 
     target:self action:@selector(reload)]; 

[button setTintColor:[UIColor blackColor]]; 
self.navigationItem.rightBarButtonItem = button; 

Variables que la barra de navegación efecto de fondo:

_navController.navigationBar.backgroundColor = [UIColor whiteColor]; 
_navController.navigationBar.tintColor = [UIColor whiteColor]; 
_navController.navigationBar.translucent = NO; 
15

En iOS 7, sólo tiene que utilizar:

self.navigationController.navigationBar.titleTextAttributes = @{NSForegroundColorAttributeName : [UIColor whiteColor]}; 

Cambio [UIColor whitecolor] con cualquier color de texto que desea

Cuestiones relacionadas