UITabBar 所选项目色调颜色
Posted
技术标签:
【中文标题】UITabBar 所选项目色调颜色【英文标题】:UITabBar Selected Item Tint Color 【发布时间】:2016-11-17 10:11:31 【问题描述】:我正在开发一个 UITabBar 应用程序。
我想用
更改选定的项目颜色[[UITabBar appearance] setTintColor:[UIColor redColor]]
这有效,直到我想用
设置 TabBar 的背景颜色[[UITabBar appearance] setBarTintColor:[UIColor blueColor]]
然后栏是蓝色的,但突出显示的项目是灰色的。
[[UITabBar appearance] setBackgroundColor:[UIColor blueColor]]
没有效果。 任何的想法? 非常感谢!
【问题讨论】:
您可以尝试使用图片作为背景,而不是使用颜色。 谢谢 - 背景图片由另一个应用程序处理。但我现在用两种颜色制作了图标 :) 【参考方案1】:试试这个代码
//Set greenColor for normal State
[UITabBarItem.appearance setTitleTextAttributes:@
UITextAttributeTextColor : [UIColor greenColor] forState:UIControlStateNormal];
//Set purpleColor for normal State
[UITabBarItem.appearance setTitleTextAttributes:@
UITextAttributeTextColor : [UIColor purpleColor] forState:UIControlStateSelected];
希望这会有所帮助。
【讨论】:
【参考方案2】:您发布的代码似乎可以正常工作。你也可以用图像来做。试试这个:
[tabBarItem1 setImage:[[UIImage imageNamed:@"home.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
[tabBarItem1 setSelectedImage:[[UIImage imageNamed:@"home_selected.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
// Change the tab bar background
UIImage* tabBarBackground = [UIImage imageNamed:@"tabbar.png"];
[[UITabBar appearance] setBackgroundImage:tabBarBackground];
[[UITabBar appearance] setSelectionIndicatorImage:[UIImage imageNamed:@"tabbar_selected.png"]];
【讨论】:
谢谢,这就是我现在所做的。我仍然用 UIColor 设置背景,但有选择和未选择的图标以上是关于UITabBar 所选项目色调颜色的主要内容,如果未能解决你的问题,请参考以下文章