导航栏背景颜色 - 半透明是没有

时间:2013-09-30 12:48:35

标签: ios objective-c uinavigationcontroller uinavigationbar

我想将导航栏的背景颜色更改为纯绿色。

规则:我不能乱用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。接受最早的答案。

4 个答案:

答案 0 :(得分: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] 

答案 1 :(得分:1)

使用这个,

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

答案 2 :(得分:0)

请使用以下代码,这可能对您有帮助。

navController.navigationBar.barTintColor = [UIColor yourcolor];

答案 3 :(得分:0)

使用navigationBar的barTintColor属性