iOS在导航栏存在状态下修改状态栏颜色

496 阅读1分钟

1、在视图控制器中添加

- (UIStatusBarStyle )preferredStatusBarStyle {

    return UIStatusBarStyleLightContent;

}

2、在自定义的navigationcontroller中还要添加
- (UIViewController*)childViewControllerForStatusBarStyle {

    return self.topViewController;

}

在info.plist文件中设置

View controller-based status bar appearance  ---- YES

如果设置为NO,则可以通过下面方法:

- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];
    [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;
}