ios - titletextattributes - El título de NavigationBar viene en color negro
uinavigationitem title color (6)
Este código cambia el texto de toda la barra de navegación, con este código el texto se puede personalizar al 100%.
en la aplicaciónDelegar:
//custom text navBar
[[UINavigationBar appearance] setTitleTextAttributes:
[NSDictionary dictionaryWithObjectsAndKeys:[UIColor colorWithRed:0x73/255.0 green:0x47/255.0 blue:0x41/255.0 alpha:1.0], UITextAttributeTextColor,
[UIColor colorWithRed:0x1D/255.0 green:0x1D/255.0 blue:0x1B/255.0 alpha:1], UITextAttributeTextShadowColor,
[NSValue valueWithUIOffset:UIOffsetMake(0, 1)],UITextAttributeTextShadowOffset,
[UIFont fontWithName:@"yourFont" size:20], UITextAttributeFont, nil]];
Estoy usando un UINavigationBar
en mi aplicación con UITabBar
. En la primera pestaña, el título de la barra de navegación viene correctamente como un título blanco con el color de fondo predeterminado, pero en la segunda pestaña no funciona de la misma manera. No estoy usando ningún código para cambiar el color del título o tintColor
la barra de tintColor
.
Primera vista:
http://img407.imageshack.us/img407/7192/4go.png
Segunda vista: http://img824.imageshack.us/img824/4493/idtk.png
¿Por qué el título UINavigationBar
la segunda vista está dibujado en este color negro?
Esto te permitirá cambiar los colores
NSDictionary *navbarTitleTextAttributes = [NSDictionary dictionaryWithObjectsAndKeys:
[UIColor whiteColor],UITextAttributeTextColor,
[UIColor blackColor], UITextAttributeTextShadowColor,
[NSValue valueWithUIOffset:UIOffsetMake(-1, 0)], UITextAttributeTextShadowOffset, nil];
[[UINavigationBar appearance] setTitleTextAttributes:navbarTitleTextAttributes];
La mayoría de las sugerencias anteriores están en desuso ahora, para el uso de iOS 7:
NSDictionary *textAttributes = [NSDictionary dictionaryWithObjectsAndKeys:
[UIColor whiteColor],NSForegroundColorAttributeName,
[UIColor whiteColor],NSBackgroundColorAttributeName,nil];
self.navigationController.navigationBar.titleTextAttributes = textAttributes;
self.title = @"Title of the Page";
Además, revise NSAttributedString.h para obtener varias propiedades de texto que se podrían establecer.
En general, no puede cambiar el color predeterminado del Título UINavigationBar
. En caso de Si desea cambiar el color del Título UINavigationBar de lo que necesita para personalizar UINavigationBar. así que ponga el código para su segundo ViewController para obtener más información.
EDITAR:
Después de buscar, encontré que puedes cambiar el color del título de UINavigationBar
por
self.navigationController.navigationBar.titleTextAttributes = [NSDictionary dictionaryWithObject:[UIColor whiteColor] forKey:UITextAttributeTextColor];
Este código está funcionando en iOS5 y más tarde.
Utilice este fragmento de código para iOS7 ya que UITextAttributeTextColor
ha quedado en desuso.
self.navigationController.navigationBar.titleTextAttributes = [NSDictionary dictionaryWithObject:[UIColor orangeColor] forKey:NSForegroundColorAttributeName];
Pruebe esto en AppDelegate:
[[UINavigationBar appearance] setTitleTextAttributes:@{NSForegroundColorAttributeName:[UIColor whiteColor]}];