一、先说改变导航栏和statusBar的背景颜色
1. 用系统提供的方法来改变背景色及字体颜色:
self.navigationController.navigationBar.barTintColor = [UIColor redColor];
效果如下:
2. 设置背景图片:
[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"背景图片"] forBarMetrics:UIBarMetricsDefault];
效果如下:
二、改变导航栏和statusBar的字体颜色
1. 如果想设置导航栏和状态栏字体都是白色,只需一行代码:
self.navigationController.navigationBar.barStyle = UIBarStyleBlack;
效果如下:
2.如果只想改变导航栏字体颜色,同时还可以设置导航栏标题字体大小可以这样:
[self.navigationController.navigationBar setTitleTextAttributes:@{NSForegroundColorAttributeName:[UIColor yellowColor],NSFontAttributeName:[UIFont systemFontOfSize:25]}];
效果如下:
3.设置statusBar的字体颜色也可以通过设置plist文件来设置:
添加属性View controller-based status bar appearance,设置为NO;
添加代码:
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;
效果如下:
PS:小女子尝试了 - (UIStatusBarStyle)preferredStatusBarStyle 方法,plist文件设置如下:
然而,并statusBar的字体颜色并没有改变 ,还请各位仁兄不吝赐教