【发布时间】:2012-01-17 14:11:35
【问题描述】:
我正在构建一个包含许多视图控制器的应用程序:我有一个 UITabBarController,其中包含 4 个 UINavigationController。我希望所有导航栏都是我的自定义颜色,比如蓝色,我通过在我的应用程序委托中执行此操作来实现:
[[UINavigationBar appearance] setTintColor:[UIColor blueColor]];
但是我也有一个特殊的视图控制器,它有一个地图,对于这个视图控制器,我想覆盖使用UIAppearance 设置的蓝色导航栏,使其成为黑色不透明样式。我已经尝试通过在viewDidLoad 内部调用它:
self.navigationController.navigationBar.barStyle = UIBarStyleBlack;
self.navigationController.navigationBar.translucent = YES;
但是什么也没发生。可以这样做还是我必须放弃 UIAppearance 并为每个视图控制器手动设置 navigationBar 上的属性?
【问题讨论】:
标签: objective-c ios xcode4 ios5