更改选项卡栏的背景颜色

时间:2016-04-26 10:41:38

标签: ios swift uitabbarcontroller uitabbar

我试图在Tab Bar的背景中获得所需的颜色,但是我遇到了问题。 这些是我尝试过的东西: -

  1. 从故事板中更改标签栏对象的背景颜色。渲染的颜色总是比所需的颜色浅。

  2. 使用viewDidLoad()方法中的以下代码以编程方式更改标签栏的颜色

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

    它不会改变颜色。相反,渲染的颜色是白色。

  3. 如何获得Tab Bar所需的颜色?

6 个答案:

答案 0 :(得分:41)

更改UITabBar的背景颜色

handle snapshot

Swift 3

根据上面的代码,你可以通过这样做来获得它

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

或更一般的

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

答案 1 :(得分:28)

我们也可以从Storyboard

开始

1)首先选择标签栏

enter image description here

2)然后从属性检查器中选择条纹色调,如下图所示:

enter image description here

那就是它!

答案 2 :(得分:9)

试试这段代码

self.tabBarController.tabBar.barTintColor =  [UIColor colorWithRed:0.376 green:0.729 blue:0.318 alpha:1.000];

答案 3 :(得分:6)

迅捷4

在您的UITabBarController内部

tabBar.barTintColor = .purple
tabBar.isTranslucent = false

您还可以访问:

tabBar.tintColor = .green
tabBar.unselectedItemTintColor = .blue

根据需要更改图标颜色。

答案 4 :(得分:2)

Swift 4,在 TabBarController 的 viewDidLoad

    self.tabBar.tintColor = UIColor.white // tab bar icon tint color
    self.tabBar.isTranslucent = false
    UITabBar.appearance().barTintColor = UIColor.blue // tab bar background color

答案 5 :(得分:0)

迅速5

self.tabBarController.tabBar.backgroundColor = .white