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

Posted

技术标签:

【中文标题】iPad 多任务处理的首选状态栏样式 - 分屏【英文标题】:Preferred status bar style on iPad multitasking - split screen 【发布时间】:2015-11-16 13:36:13 【问题描述】:

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

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

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

尝试 - [自我设置NeedsStatusBarAppearanceUpdate]; 特征集合更改后没有解决问题。

任何帮助将不胜感激!

【问题讨论】:

【参考方案1】:
// 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()

【讨论】:

以上是关于iPad 多任务处理的首选状态栏样式 - 分屏的主要内容,如果未能解决你的问题,请参考以下文章

当 iPad 进入分屏多任务模式时收到通知

iOS 10 iPad Safari分屏多任务功能确实有用

如何让我的应用支持多任​​务处理

iPad开发-分屏画中画(即多任务处理增强功能)

WWDC 2019 - iOS13 April 2020 要求

Android N上一些新特性的介绍