一个用于 iOS 7 的 UINavigationBar
子类,允许在 iOS 7 上获得强烈的彩色导航栏。
使用 UINavigationController 的 initWithNavigationBarClass:toolbarClass: 方法
UINavigationController *navigationController = [[UINavigationController alloc] initWithNavigationBarClass:[AZColoredNavigationBar class] toolbarClass:[UIToolbar class]];
// If you need to set a rootViewController too, then set the navigationController's viewControllers.
navigationController.viewControllers = @[ rootViewController ];
然后,可以使用 UIAppearance(全局应用)设置 barTintColor
[[UINavigationBar appearance] setBarTintColor:[UIColor blueColor]];
或者如果想要动态更改颜色
navigationBar.barTintColor = [UIColor blueColor];
感谢 @steventroughtonsmith,他提供了如下 gist 中的原始帮助。从这里fork了 @aprato 的修改。