我是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]];
但没有任何改变,它显示出相同的白色背景颜色,我想知道我正在做的错误
答案 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]];