在 iPad 12.9'' 分屏上折叠详细视图控制器
Collapse detail view controller on iPad 12.9'' split screen
我正在为我的应用程序构建一个历史部分,它使用 SplitViewController 将日历显示为 Master,将某一天的统计信息显示为 Detail。除了一个烦人的问题外,一切都很好:在 12.9'' iPad 的大屏幕上,当处于横向模式并分成两半时,框架的宽度为 wR 大小 class,这导致 SplitViewController同时显示 Master 和 Detail,后者被压缩并且几乎无法使用:
另一方面,当处于纵向模式和 2/3 分屏时 - 虽然根据 Xcode 它也是一个 wR class - 我的日历大师占据了整个框架,细节崩溃:
在第一种情况下,我也更喜欢这种布局,但很难找到一种强制折叠细节的方法。我尝试将 maximumPrimaryColumnWidth
设置为所需的 678 pt 或更多大小,但没有效果。
有人可以为此提出一个优雅实用的解决方案吗?
是的,这是可能的,制作一个 parent 拆分视图控制器的视图控制器,并使用 setOverrideTraitCollection(_:forChild:)
和 compact 使拆分在屏幕宽度达到一定尺寸时折叠。
以下是 Apple 自适应照片示例中的相关示例:
这里是 WWDC 2014 的视频session 解释它:
我正在为我的应用程序构建一个历史部分,它使用 SplitViewController 将日历显示为 Master,将某一天的统计信息显示为 Detail。除了一个烦人的问题外,一切都很好:在 12.9'' iPad 的大屏幕上,当处于横向模式并分成两半时,框架的宽度为 wR 大小 class,这导致 SplitViewController同时显示 Master 和 Detail,后者被压缩并且几乎无法使用:
另一方面,当处于纵向模式和 2/3 分屏时 - 虽然根据 Xcode 它也是一个 wR class - 我的日历大师占据了整个框架,细节崩溃:
在第一种情况下,我也更喜欢这种布局,但很难找到一种强制折叠细节的方法。我尝试将 maximumPrimaryColumnWidth
设置为所需的 678 pt 或更多大小,但没有效果。
有人可以为此提出一个优雅实用的解决方案吗?
是的,这是可能的,制作一个 parent 拆分视图控制器的视图控制器,并使用 setOverrideTraitCollection(_:forChild:)
和 compact 使拆分在屏幕宽度达到一定尺寸时折叠。
以下是 Apple 自适应照片示例中的相关示例:
这里是 WWDC 2014 的视频session 解释它: