简体   繁体   中英

change tabbar text color,iPhone

I have created a tabbar programmatically.

Can we change color of title of the tabbar item? Default is white, and im trying to make it black.

something like

 tabbaritem.text.textcolor=[UIcolor Blackcolor];

Thanks

In iOS5 you use the appearance proxy to change the title color:

For a specific tabbar item:

[[UITabBarItem appearance] setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:
                                         [UIFont fontWithName:@"AmericanTypewriter" size:20.0f], UITextAttributeFont,
                                         [UIColor yellowColor], UITextAttributeTextColor,
                                         [UIColor redColor], UITextAttributeTextShadowColor,
                                         [NSValue valueWithUIOffset:UIOffsetMake(0.0f, 1.0f)], UITextAttributeTextShadowOffset,
                                         nil] forState:UIControlStateNormal];

Or replace self.tabBarItem with [UITabBarItem appearance] to change all your tabbar items. If you want to change them all , I suggest you place the code on appdelegate didFinishLaunchingWithOptions:

Just something else ...

To set your standard appearance in iOS 5:

In your AppDelegate.m do:

[[UITabBar appearance] setTintColor:myColor]; //or whatever you want to change

Saves you a lot of work.

Maybe this updated code helps someone:

[UITabBarItem.appearance setTitleTextAttributes:@{
                                                  NSForegroundColorAttributeName : [UIColor lightGrayColor] } forState:UIControlStateNormal];

[UITabBarItem.appearance setTitleTextAttributes:@{
                                                  NSForegroundColorAttributeName : [UIColor whiteColor] }     forState:UIControlStateSelected];

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM