2013-09-30 89 views
5

我想将导航栏的背景颜色更改为纯绿色。导航栏背景颜色 - 半透明不是

规则:我不能用的AppDelegate :)

我试过乱:

//It's green but it's translucent 
[self.navigationController.navigationBar setBackgroundColor:[UIColor colorWithRed:77/255.0 green:255/255.0 blue:100/255.0 alpha:1.0f]]; 

//It's white, first line has no effect 
[self.navigationController.navigationBar setBackgroundColor:[UIColor colorWithRed:77/255.0 green:255/255.0 blue:100/255.0 alpha:1.0f]]; 
[self.navigationController.navigationBar setTranslucent:NO]; 

//Same result as case 1 
[self.navigationController.navigationBar setAlpha:0.0f]; 
[self.navigationController.navigationBar setBackgroundColor:[UIColor colorWithRed:77/255.0 green:255/255.0 blue:100/255.0 alpha:1.0f]]; 

//Too dark 
[self.navigationController.navigationBar setBarStyle:UIBarStyleBlackTranslucent]; 
[self.navigationController.navigationBar setBackgroundColor:[UIColor colorWithRed:77/255.0 green:255/255.0 blue:100/255.0 alpha:1.0f]]; 

//Only affects the back button's color: 
[self.navigationController.navigationBar setTintColor:[UIColor greenColor]]; 

所以任何想法?

谢谢,没有看到有barTintColor和TintColor。接受最早的答案。

+0

迪迪你用故事板?然后选择视图控制器,然后在模拟指标下的检查器中将顶部栏设置为不透明的导航栏 – thorb65

回答

17

使用此行代码在你的viewController didLoad方法

self.navigationController.navigationBar.barTintColor = [UIColor colorWithRed:29.0f/255.0f green:149.0f/255.0f blue:174.0f/255.0f alpha:1.0f] 
0

请使用下面的代码可能会对你有帮助。

navController.navigationBar.barTintColor = [UIColor yourcolor]; 
+0

以上答案和我的答案有什么不对? –

1

使用这一个,的导航栏的

self.navigationController.navigationBar.tintColor=[UIColor colorWithRed:19.0/255.0f green:52.0/255.0f blue:36.0/255.0f alpha:1];