更改标签栏的背景颜色
Posted
技术标签:
【中文标题】更改标签栏的背景颜色【英文标题】:Changing the background color of Tab Bar 【发布时间】:2016-08-20 03:24:44 【问题描述】:我正在尝试在标签栏的背景中呈现所需的颜色,但是我遇到了问题。 这些是我尝试过的事情:-
从情节提要更改标签栏对象的背景颜色。渲染的颜色总是比想要的颜色浅。
使用viewDidLoad()
方法中的以下代码以编程方式更改标签栏的颜色
self.tabBar.translucent = false
self.tabBar.backgroundColor = UIColor(hexString: "323B61")
它不会改变颜色。相反,呈现的颜色是白色。
如何获得所需的标签栏颜色?
【问题讨论】:
【参考方案1】: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
【讨论】:
【参考方案2】:斯威夫特 5
self.tabBarController.tabBar.backgroundColor = .white
【讨论】:
谢谢!太烦人了,Apple 一直在改变这个!【参考方案3】:改变UITabBar的背景颜色
TabBarController* Tcontroller =(TabBarController*)self.window.rootViewController;
Tcontroller.tabBar.barTintColor=[UIColor yourcolour];
斯威夫特 3
根据上面的代码,这样就可以得到了
let Tcontroller = self.window.rootViewController as? UITabBarController
Tcontroller?.tabBar.barTintColor = UIColor.black // your color
或者更笼统的
UITabBar.appearance().barTintColor = UIColor.black // your color
【讨论】:
也可以:tabBar.isTranslucent = false
【参考方案4】:
我们也可以通过Storyboard
进行操作
1) 先选择标签栏:
2) 然后从 Attribute Inspector 中选择 Bar Tint colour 如下图所示:
就是这样!
【讨论】:
【参考方案5】:斯威夫特 4
在你的 UITabBarController 中
tabBar.barTintColor = .purple
tabBar.isTranslucent = false
您还可以访问:
tabBar.tintColor = .green
tabBar.unselectedItemTintColor = .blue
根据需要更改图标颜色。
【讨论】:
【参考方案6】:试试这个代码
self.tabBarController.tabBar.barTintColor = [UIColor colorWithRed:0.376 green:0.729 blue:0.318 alpha:1.000];
【讨论】:
barTintColor 是否可以在低于 8.0 版本的 ios 设备中使用??以上是关于更改标签栏的背景颜色的主要内容,如果未能解决你的问题,请参考以下文章