0

我编写的用于在横向模式下为 iPhone Plus 设备实现分屏模式的应用程序在 iPhone Xs Max 上构建和运行时不再实现分屏模式。例如,详细视图不能被限制在屏幕的右侧,而主视图被限制在屏幕的左侧,而是将详细视图扩展到整个屏幕。此意外行为仅在 iPhone Xs Max 上发生,而不是在早期的 iPhone Plus 设备型号上发生。

预期 UI 行为的一个示例是您在将 iPhone Plus 设备旋转到横向时在内置的 Apple 邮件和日历应用程序中看到的内容。

有趣的是,Apple Mail 应用程序在 iOS 12 的 iPhone Xs Max 上出现了意外的 UI 行为(截至 12.1,到目前为止是 beta 2);其中,屏幕左侧的邮件消息标题部分遮挡了通常完全限制在屏幕右侧的所选消息的正文。Mail 应用程序中的这种意外行为在早期的 iPhone Plus 型号上不会发生,因此可能是一个错误(已报告)。

4

1 回答 1

0

从 WWDC 2018 视频“为 iPhone XS、iPhone XS Max 和 iPhone XR 构建应用程序”1 中可以得出结论 iOS 12 对 SplitViewController API 的行为进行了更改,该 API 与它的 preferredDisplayMode 属性的 .automatic 值相关联。

如果您为您的 UISplitViewController 实例指定 preferredDisplayMode = .allVisible [例如,在 AppDelegate 方法 application(_:didFinishLaunchingWithOptions:)] 中,那么您应该在 iPhone Xs Max 上获得与您在横向上相同的预期拆分视图 UI 行为将在早期的 iPhone Plus 型号上使用。

于 2018-10-06T16:13:47.063 回答