title: How to change tabbar icon color from default blue?
body: <p>I have got four tabs. I was able to change the tab icon color from default blue to red (or probably any color) and it works perfectly fine. The  problem is it works only for three tabbaritems and last one is default blue. Below is the code. I'm coding this in <code>rootviewcontrollerAppDelegate.m</code> You could try this by pasting the below code in your appdelegate. Could you guys help me out I'd be so greatful!</p>
  
  <pre><code>@implementation UITabBar (ColorExtensions)
  
  - (void)recolorItemsWithColor:(UIColor *)color shadowColor:(UIColor *)shadowColor shadowOffset:(CGSize)shadowOffset shadowBlur:(CGFloat)shadowBlur
  
  {
  
  CGColorRef cgColor = [color CGColor];
  
   CGColorRef cgShadowColor = [shadowColor CGColor];
  
  for (UITabBarItem *item in [self items])
  
   if ([item respondsToSelector:@selector(selectedImage)] &amp;&amp;
  
      [item respondsToSelector:@selector(setSelectedImage:)] &amp;&amp;
  
         [item respondsToSelector:@selector(_updateView)])
  
  {
  
  CGRect contextRect;
  
    contextRect.origin.x = 0.0f;
  
   contextRect.origin.y = 0.0f;
  
   contextRect.size = [[item selectedImage] size];
              // Retrieve source image and begin image context
  
   UIImage *itemImage = [item image];
  
   CGSize itemImageSize = [itemImage size];
  
   CGPoint itemImagePosition; 
  
   itemImagePosition.x = ceilf((contextRect.size.width - itemImageSize.width) / 2);
  
    itemImagePosition.y = ceilf((contextRect.size.height - itemImageSize.height) / 2);
  
   UIGraphicsBeginImageContext(contextRect.size);
  
    CGContextRef c = UIGraphicsGetCurrentContext();
              // Setup shadow
  
    CGContextSetShadowWithColor(c, shadowOffset, shadowBlur, cgShadowColor);
              // Setup transparency layer and clip to mask
  
    CGContextBeginTransparencyLayer(c, NULL);
  
   CGContextScaleCTM(c, 1.0, -1.0);
  
   CGContextClipToMask(c, CGRectMake(itemImagePosition.x, -itemImagePosition.y, 
  
      itemImageSize.width, -itemImageSize.height), [itemImage CGImage]);
              // Fill and end the transparency layer
  
   CGContextSetFillColorWithColor(c, cgColor);
  
   contextRect.size.height = -contextRect.size.height;
  
      CGContextFillRect(c, contextRect);
  
    CGContextEndTransparencyLayer(c);
              // Set selected image and end context
  
    [item setSelectedImage:UIGraphicsGetImageFromCurrentImageContext()];
  
    UIGraphicsEndImageContext();
              // Update the view
  
   [item _updateView];
  
  }
  
  }
  @end
  
  - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:    (NSDictionary *)launchOptions 
  {    
  
      [[tabBarController tabBar] recolorItemsWithColor:[UIColor redColor] shadowColor:[UIColor blackColor] shadowOffset:CGSizeMake(0.0f, -1.0f) shadowBlur:3.0f];
  
      [self.window addSubview:tabBarController.view];
  
          [self.window makeKeyAndVisible];
  
          [self addTabBarArrow];
  
           return YES;
  }
  </code></pre>
  
  <p><img src="https://i.stack.imgur.com/xo5ji.png" alt="enter image description here"></p>