MyVC *vc = [[MyVC alloc] init];
vc.delegate = self;
UINavigationController *nc = [[UINavigationController alloc] initWithRootViewController:vc];
[nc.navigationBar setTintColor:[UIColor redColor]];
[self presentViewController:nc animated:true completion:^{}];
导航栏为黑色。我在我的App Delegate中创建的标签栏控制器内的导航控制器中显示此信息。在我的ApplicationDidFinishLaunchingWithOptions中,我可以控制那里的导航控制器的颜色。
为什么此导航控制器色调条变黑?
答案 0 :(得分:0)
[[UINavigationBar appearance] setTintColor:[UIColor redColor]];
如果你的所有NavigationBars都是相同的颜色,我建议你使用它。对象的外观属性会对您应用的函数设置一致性。
答案 1 :(得分:0)
·H
@interface CustomUINavigationBar : UINavigationBar {
}
@end
的.m
@implementation CustomUINavigationBar
- (void)drawRect:(CGRect)rect {
UIColor *color = [UIColor colorWithRed:0.023 green:0.14 blue:0.478 alpha:1];// for example
self.tintColor = color;
}
@end
您也可以尝试在下面的代码中插入以下代码:AppDelegate.m的
的didFinishLaunchingWithOptions:[[UINavigationBar appearance] setBarTintColor:[UIColor redColor]];
答案 2 :(得分:0)
在iOS7
中,您必须使用barTintColor
属性
[nc.navigationBar setBarTintColor:[UIColor redColor]];
而不是
[nc.navigationBar setTintColor:[UIColor redColor]];