我在故事板中添加了Navigation View Controller
并将其连接到每个ViewController
。
然后我创建了这个类:
@interface NavigationViewController : UINavigationController
在实现中,我有以下代码:
- (void)viewDidLoad {
[super viewDidLoad];
self.navigationController.navigationBar.barTintColor = [UIColor colorWithHex:@"#F40116" alpha:1.0];
self.navigationController.navigationBar.translucent = NO;
}
我尝试在所有ViewControllers中将navigationBar
的背景更改为红色 - 但背景仍为白色。我怎么能把它们都变成红色?
答案 0 :(得分:2)
我猜您正在尝试更改navigationController的navigationController的navigationBar的颜色。
试试这个:
- (void)viewDidLoad {
[super viewDidLoad];
self.navigationBar.barTintColor = [UIColor colorWithHex:@"#F40116" alpha:1.0];
self.navigationBar.translucent = NO;
}
答案 1 :(得分:0)
请试试这个:
- (void)viewDidLoad {
[super viewDidLoad];
[self.navigationBar setBarTintColor:[UIColor redColor]];
}
确保将UINavigationController
课程设置为您的自定义控制器。
答案 2 :(得分:0)
尝试在viewWillAppear
上进行所有视觉更改- (void) viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
self.navigationBar.tintColor = [UIColor redColor];
}
这对你有用。