在Objective C中,在呈现ViewController的同时如何更改NavigationBar的颜色?

时间:2015-10-01 11:48:12

标签: uinavigationbar presentmodalviewcontroller

我可以通过提供BackgroundColor来改变NavigationBar的颜色,但是我无法更改StatusBar的颜色。请提供解决方案。

1 个答案:

答案 0 :(得分:0)

您应该更改barTintColor而不是背景颜色。

[self.navigationController setBarTintColor:[UIColor redNavigationBarColor]];

您可能需要更改barButton颜色和/或标题颜色以及所有可能应用于多个屏幕的颜色。因此,为了节省您的时间,如果您想要全局更改所有这些,请将以下代码放在您的应用代理中

[[UINavigationBar appearance] setBarTintColor:[UIColor redColor]];
[[UINavigationBar appearance] setTitleTextAttributes:@{NSForegroundColorAttributeName : [UIColor whiteColor]}];
[[UINavigationBar appearance] setTintColor:[UIColor whiteColor]];

上面的代码会为您提供一个带有白色标题的红色导航栏。按钮