分栏视图控制器
分栏视图控制器是一个管理两个子视图控制器的展示的全屏视图控制器。
API NOTE
分栏视图控制器的每个子视图都负责一个面板的显示管理。分栏视图控制器自己显示这些子视图控制器并管理不同方向的过渡。查看UISplitViewController Class Reference和Split View Controllers来学习更多关于在你的代码中定义分栏视图控制器的内容。
在iOS 7及更早的系统中,分啦视图控制器只可以用在iPad上。
默认情况下,一个分栏视图控制器使用当前的尺寸来决定如何安排它的子视图控制器。比如说,一个分栏视图控制器:
- 尝试在水平常规环境下并排显示两个面板
- 可以在第二面板的顶部层级显示主面板,或者可以隐藏主面板到屏幕外直到需要的时候再显示,一般来说用在水平紧致环境下
你可以通过要求分栏视图控制器在一个特定的显示环境下优先关注你特定的布局来影响面板的安排。
分栏视图控制器可以包含很大范围的对象和视图,例如:
- 列表、图片、地图、文本、网页或者自定义的视图
- 导航栏、工具栏或者标签栏
NOTE
即使主面板经常称为master pane,第二面板经常称为detail pane,这个关系在代码中却并不是强制的。
使用分栏视图控制器来在主面板显示持久信息,在第二面板显示相关的详情或者从属的信息。在这种设计模式下,当人们在主面板选择一个条目后,第二面板应该显示与此条目有关的信息。(你需要在代码中实现这个事件。)
不要创建比主面板狭窄的第二面板。如果主面板比第二面板狭窄,分栏视图控制器就不再能充满屏幕的宽度并且整体外观时不平衡的。
不要同时在两个面板显示导航栏。这样做会让用户非常难识别两个面板的关系。
一般来说,以一种持久的方式表明主面板当前选中的条目。即使第二面板的内容可以更改,它应该总是保持与主面板选中的条目相关。这个查看的经验会帮助人们理解主面板条目和第二面板内容的关系。
合适的话,给人们可替换的方式来获取主面板。默认情况下,在水平紧致环境下只显示第二面板,并且你提供给用户一个按钮(一般放置在导航栏)来显示和隐藏主面板。芬兰视图控制器也支持滑动手势来执行显示/隐藏操作。除非你的app使用滑动手势来执行其他功能,否则你应该让人们通过滑动来获取主面板。
本文翻译自苹果官方开发文档