UISplitViewController简介

  • UISplitViewController iOS提供的专门用于实现左右结构界面的控制器
1> iOS8以后,iPhone和iPad都可以使用
2> MasterVc : 主视图控制器   一般显示在左边
3> DetailVc : 明细视图控制器  一般显示在右边
4> 默认样式:
iPad竖屏: 显示明细控制器,可以通过手势来显隐主视图
iPad横屏: 显示主视图&明细视图,不可以通过手势显隐主视图
iPhone竖屏: 如果主视图为UIViewController,则显示主视图;如果主视图为UINavigationVc的子控制器,则会显示明细控制器
iPhone横屏: iPhone 6/s Plus下,会显示左右结构,其他设备和iPhone竖屏时的显示一样

5> 创建splitViewController 在显示前必须设置主视图控制器,可以不设置明细控制器
6> SplitViewController可以通过addChildViewController添加子控制器,但是只有添加的第一个子控制器会被设置在主视图控制器的位置上,第二个控制器会被设置在明细视图控制器的位置上
7> 允许继续添加,但是不会被显示

  • 关键属性介绍

1.preferredDisplayMode:显示模式

UISplitViewControllerDisplayModeAutomatic,         自动,默认样式
UISplitViewControllerDisplayModePrimaryHidden,     主视图隐藏   横竖屏主视图都会隐藏,可以通过手势来控制主视图的显隐
UISplitViewControllerDisplayModeAllVisible,        始终显示     横竖屏主视图都会显示,不可以通过手势来控制主视图的显隐
UISplitViewControllerDisplayModePrimaryOverlay,    主视图悬停   横竖屏主视图都会显示,可以通过手势来控制主视图的显隐

2.preferredPrimaryColumnWidthFraction:主视图的宽度比例
主视图的宽度比例 = 主视图宽度 / SplitViewController整体宽度

主视图的宽度比例不好控制,并且受最大值maximumPrimaryColumnWidth和最小值minimumPrimaryColumnWidth两个属性限制

通常设置一个具体的宽度,直接设置maximumPrimaryColumnWidth,这样更适合以一张固定图片来设置背景UI的需求

你可能感兴趣的:(UISplitViewController简介)