iOS导航栏背景颜色

时间:2015-03-12 14:22:46

标签: ios uiviewcontroller uinavigationbar

我是iOS开发的新手,我遇到了一个奇怪的问题。在 viewDidLoad

我写过这样的代码

self.navigationController.navigationBar.backgroundColor= [UIColor colorWithRed:189.0/255.0 green:105.0/255 blue:105.0/255 alpha:1.0];

这个工作正常并改变了导航栏的背景颜色,问题是在导航栏的顶部有白色条显示(有载体,电池,时间),我想要的背景颜色也改变了...所以我尝试了下面的代码

[[UINavigationBar appearance] setBackgroundColor:[UIColor colorWithRed:189.0/255.0 green:105.0/255 blue:105.0/255 alpha:1.0]];

但没有任何改变,它显示出相同的白色背景颜色,我想知道我正在做的错误

2 个答案:

答案 0 :(得分:9)

试试这个,

[[UINavigationBar appearance] setBarTintColor:[UIColor yellowColor]];

self.navigationController.navigationBar.barTintColor = [UIColor blueColor];
self.navigationController.navigationBar.tintColor = [UIColor whiteColor];
self.navigationController.navigationBar.translucent = NO;

[self.navigationController.navigationBar setBarStyle:UIStatusBarStyleLightContent];

答案 1 :(得分:0)

您应该使用barTintColor属性来更改导航栏背景颜色以及状态栏背景颜色。

[[UINavigationBar appearance] setBarTintColor:[UIColor colorWithRed:189.0/255.0 green:105.0/255 blue:105.0/255 alpha:1.0]];