ios - Cambiar tintColor del título del elemento UITabBarController no seleccionado e imagen de fondo
ios8 uitabbaritem (4)
¡Lo averigué!
Use esto para cambiar el color del texto:
[[UITabBarItem appearance] setTitleTextAttributes:@{ NSForegroundColorAttributeName : [UIColor greenColor] }
forState:UIControlStateNormal];
[[UITabBarItem appearance] setTitleTextAttributes:@{ NSForegroundColorAttributeName : [UIColor blackColor] }
forState:UIControlStateSelected];
Y asegúrese de que el modo de reproducción de imágenes esté configurado en ORIGINAL para las imágenes
UIImage *deselectedImage = [[UIImage imageNamed:@"deselectedImage"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
UIImage *selectedImage = [[UIImage imageNamed:@"selectedImage"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
¿Cómo puedo cambiar el tintColor de un título de UITabBarItem no seleccionado e imagen de fondo iOS 8?
El color predeterminado para un estado no seleccionado es un color gris claro, pero no se muestra en mi fondo oscuro sombra Fondo UITabBar
Me gustaría que mi estado no seleccionado tenga un color de [UIColor blackColor]
Dentro de mi aplicación delegado didfinishlaunchingwithoptions: Tengo
UIImage *deselectedE = [[UIImage imageNamed:@"mincraft_axe_green_32.png"] imageWithRenderingMode:UIImageRenderingModeAutomatic];
UIImage *selectedE = [[UIImage imageNamed:@"mincraft_axe_green_32.png"] imageWithRenderingMode:UIImageRenderingModeAutomatic];
e.tabBarItem = [[UITabBarItem alloc] initWithTitle:@"Profile" image:deselectedE selectedImage:selectedE];
[[UITabBar appearance] setTintColor:[UIColor blackColor]];
En su AppDelegate.m dentro de la application didFinishLaunchingWithOptions:
use el siguiente código:
//unselected icon tint color
[[UIView appearanceWhenContainedIn:[UITabBar class], nil] setTintColor:[UIColor redColor]];
//selected tint color
[[UITabBar appearance] setTintColor:[UIColor greenColor]];
//text tint color
[[UITabBarItem appearance] setTitleTextAttributes:@{ NSForegroundColorAttributeName : [UIColor whiteColor] }
forState:UIControlStateNormal];
//background tint color
[[UITabBar appearance] setBarTintColor:[UIColor blueColor]];
También puede configurarlo directamente en Storyboard ... Consulte mi respuesta aquí: Cómo configurar el tinte no seleccionado de UITabBarItem, *** incluyendo los elementos del sistema *** (iOS7)
Si está utilizando Storyboard, también puede establecer
Image
forBar Item
eSelected Image
paraSelected Bar Item
para obtener una imagen inalterada en tabBar.
Alternativamente, en el catálogo de Assets
, puede seleccionar Render As
: Original Image
en los atributos de su imagen ( View
> Utilities
> Show Attributes Inspector
o acceso directo ⌥⌘4
(Opción + Comando + 4))