2016-11-17 3 views
1

Ich arbeite an einer UITabBar-Anwendung.UITabBar Ausgewähltes Objekt Farbton Farbe

Ich möchte das ausgewählte Element Farbe mit

[[UITabBar appearance] setTintColor:[UIColor redColor]] 

ändern Das funktioniert, bis ich die Hintergrundfarbe des TabBar mit

[[UITabBar appearance] setBarTintColor:[UIColor blueColor]] 

Dann wird die Bar ist blau gesetzt werden soll, aber die markierte Elemente sind grau.

[[UITabBar appearance] setBackgroundColor:[UIColor blueColor]] 

hat keine Wirkung. Irgendeine Idee? Vielen Dank!

+2

anstelle der Farbe können Sie Hintergrund mit Bildern versuchen. –

+0

Danke - Hintergrund mit Bildern von einer anderen App gearbeitet. Aber ich habe jetzt die Icons in zwei Farben gemacht :) – Steeve

Antwort

0

Ihr Code, den Sie gepostet haben, scheint zu funktionieren. Sie können es auch mit Bildern machen. Versuchen Sie dies:

[tabBarItem1 setImage:[[UIImage imageNamed:@"home.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]]; 
[tabBarItem1 setSelectedImage:[[UIImage imageNamed:@"home_selected.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]]; 

// Change the tab bar background 
UIImage* tabBarBackground = [UIImage imageNamed:@"tabbar.png"]; 
[[UITabBar appearance] setBackgroundImage:tabBarBackground]; 
[[UITabBar appearance] setSelectionIndicatorImage:[UIImage imageNamed:@"tabbar_selected.png"]]; 
+0

Danke, das habe ich jetzt gemacht. Ich setze de Hintergrund noch mit einem UIColor, habe aber nicht ausgewählte Icons ausgewählt – Steeve

2

Versuchen Sie diesen Code

//Set greenColor for normal State 
[UITabBarItem.appearance setTitleTextAttributes:@{ 
     UITextAttributeTextColor : [UIColor greenColor] } forState:UIControlStateNormal]; 
//Set purpleColor for normal State 


[UITabBarItem.appearance setTitleTextAttributes:@{ 
     UITextAttributeTextColor : [UIColor purpleColor] }  forState:UIControlStateSelected]; 

Hoffnung, das hilft.