关于状态栏兼容的问题

报错信息:

: CGContextRestoreGState: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.

出错原因:设置app的状态栏的样式使用了旧的方式,在info.plist里面设置了 View controller-based status bar appearance 为NO,默认为YES,一般是 iOS6 的时候使用这种方式,iOS7、8也兼容,但是到了 iOS9 就报警告了。

修改方法:将 View controller-based status bar appearance 设置为YES,然后使用新的方式来实现状态栏的样式。

View controller-based status bar appearance.png

iOS7之后的方法:

- (UIStatusBarStyle)preferredStatusBarStyle;
- (UIViewController *)childViewControllerForStatusBarStyle;
- (void)setNeedsStatusBarAppearanceUpdate;

你可能感兴趣的:(关于状态栏兼容的问题)