设置导航视图控制器的背景

时间:2016-01-17 22:18:35

标签: ios objective-c uinavigationbar

我在故事板中添加了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的背景更改为红色 - 但背景仍为白色。我怎么能把它们都变成红色?

3 个答案:

答案 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课程设置为您的自定义控制器。

enter image description here

答案 2 :(得分:0)

尝试在viewWillAppear

上进行所有视觉更改
- (void) viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
    self.navigationBar.tintColor = [UIColor redColor];
}

这对你有用。