How to change UITabBar Selection color

How to change UITabBar Selection color

I need to change the selection color of UITabBar from default blue to red. How do we do this.

Getting first three digits from int/float


How can a C# programmer build software for iPhone?
You can do this by setting a "tintColor" attribute (Key Path) for you UITabBar..
Saving reference to UITableViewCell
  1. Select the UITabBar in the document outline.

    Reformatting for landscape view
    (NOT the Controller with the yellow icon.)
  2. Select Identity Inspector in the Utilities area.
  3. Click the + in "User Defined Runtime Attributes."
  4. Add a "tintColor" Key Path of type "Color" and the color you want.
This should do it.

Fade in/out UIScrollView's content like Mobile Safari does in its tab
You can check it against the screenshot below..
warning: declaration does not declare anything
enter image description here.
How to Base64 encoding on the iPhone
More on this: There's a "Tint" attribute in Identity Inspector of UITabBar which I believed would do the exact same thing but apparently, it does nothing.

UIWebView slow loading images--disturbs scrolling to anchors
It's default value is the exact default fill color when a UITabBarItem is selected, so my guess is it would be fixed in the stable release Xcode 7.

Fingers crossed..


In IOS5, UITabBar has a selectedImageTintColor property which does what you need..


In iOS 7 it's simply the tintColor.

One way to accomplish this could be to subclass UITabBarViewController, set the custom class in the storyboard, and in your viewDidLoad method of the subclassed tabBarVC add this:.
[[self tabBar] setTintColor:[UIColor redColor]]; 


It is extremely easy. Create a custom class of UITabBarController and in -(void)viewDidLoad method add this line:.
[[self tabBar] setSelectedImageTintColor:[UIColor greenColor]];  


The SDK does not make this easy, but it is technically possible.

Apple apparently believes this to be part of their vision of a consistent look and feel.. UITabBar is a subclass of UIView.

You can always subclass and implement your own -drawRect:. This is not a trivial task, however, you have to essentially re-implement the class from scratch or you risk some weird side-effects.



Because UITextAttributeTextColor is deprecated in iOS 7, you should use: .
[UITabBarItem.appearance setTitleTextAttributes:@{NSForegroundColorAttributeName : [UIColor greenColor]} forState:UIControlStateNormal];     [UITabBarItem.appearance setTitleTextAttributes:@{NSForegroundColorAttributeName : [UIColor purpleColor]} forState:UIControlStateSelected]; 


I've been searching for a way to set the selected text color of a UITabBarItem and have found a dead simple method, using the UIAppearance protocol..
[UITabBarItem.appearance setTitleTextAttributes:@{         UITextAttributeTextColor : [UIColor greenColor] } forState:UIControlStateNormal];  [UITabBarItem.appearance setTitleTextAttributes:@{         UITextAttributeTextColor : [UIColor purpleColor] }     forState:UIControlStateSelected]; 
Please excuse the awful colors!.


iOS 5.0 fixes this issue but the solution is under NDA.

Look up UITabBar in your documentation for an EASY way to do what you want to do..


Starting from iOS 8 it's as simple as:.
UITabBar.appearance().tintColor = UIColor.redColor() 

62 out of 100 based on 27 user ratings 352 reviews