存在导航栏时iOS状态栏Style控制

当存在导航栏(NavgationBar)时,在ViewController中控制状态栏Style不起作用,此时需要在NavgationController中实现下边方法:

- (UIViewController *)childViewControllerForStatusBarStyle {
    return self.topViewController;
}

然后在子控制器中重写以下方法来控制StatusBar的Style:

- (UIStatusBarStyle)preferredStatusBarStyle {
    return UIStatusBarStyleDefault;
}

当更改Style后需要即时刷新时调用:

[self setNeedsStatusBarAppearanceUpdate];
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容