分兩步,一步是在Info.plist裏面增加View controller-based status bar appearance 值設置爲no
第二步在UIViewController裏的viewWillApper或viewDidAppear裏面加入[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent]
我是在appdelegate設置,並進行版本判斷
if (version >=7.0) {
[[UIApplicationsharedApplication] setStatusBarStyle:UIStatusBarStyleLightContentanimated:NO];
}
順帶說2個問題,導航欄用self.navigationBar.barTintColor = JMColor(33,38,46,1.0);直接設置背景顏色的話,會導致titleview像浮在上面一樣:
但是加上上面兩步就可以解決了:
然後push的時候會出現藍色返回樣式,可加入以下兩句代碼:
self.navigationController.navigationBar.barStyle = UIStatusBarStyleDefault;
[self.navigationController.navigationBar setTintColor:[UIColor whiteColor]];