ios ios8 uitabbaritem tintcolor bartintcolor

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]];


También puede renderizar la imagen como original desde el inspector de atributos para el archivo de activos sin escribir ningún código


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 for Bar Item e Selected Image para Selected 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))