iPad多任务处理的首选状态栏样式 – 分屏

我有两个视图控制器 – 第一个有UIStatusBarStyleDefault ,第二个有UIStatusBarStyleLightContent

VC1将VC2呈现为模态表单。 因此,当呈现常规特征集时,VC2呈现为UIModalPresentationFormSheet ,VC1将状态栏设置为Default 。 但在紧凑的特征收集中,VC2是全屏的,并将状态栏样式设置为Light Content

问题是当从常规到紧凑(全屏到表单)之间切换时,状态栏没有更新。

全分屏

尝试 – [self setNeedsStatusBarAppearanceUpdate]; 特征收集改变后没有解决问题。

任何帮助都感激不尽!

 // This controls whether this view controller takes over control of the status bar's appearance when presented non-full screen on another view controller. Defaults to NO. @available(iOS 7.0, *) public var modalPresentationCapturesStatusBarAppearance: Bool 

用法:

 navigationController.modalPresentationStyle = .FormSheet navigationController.modalPresentationCapturesStatusBarAppearance = true 

一旦设置了该导航控制器的根视图控制器就可以覆盖preferredStatusBarStyle()