iosswiftuitabbarcontrolleruitabbar

Changing the background color of Tab Bar


I am trying to get desired color rendered in the background of Tab Bar however I am facing problems. These are the things that I tried :-

  1. Changing the background color of tab bar object from storyboard. The color rendered is always lighter than the desired color.

  2. Programmatically changing the color of the tab bar using the following code inside viewDidLoad() method

        self.tabBar.translucent = false
        self.tabBar.backgroundColor = UIColor(hexString: "323B61")
    

    It doesn't change the color. Instead , the color rendered is white.

How can I get the desired color for Tab Bar?


Solution

  • To change background colour of UITabBar

    TabBarController* Tcontroller =(TabBarController*)self.window.rootViewController;
    Tcontroller.tabBar.barTintColor=[UIColor yourcolour];
    

    Swift 3

    Based on the code above, you can get it by doing this

    let Tcontroller = self.window.rootViewController as? UITabBarController
    Tcontroller?.tabBar.barTintColor = UIColor.black // your color
    

    or in more general

    UITabBar.appearance().barTintColor = UIColor.black // your color