- UISplitViewController iOS提供的專門用于實現(xiàn)左右結(jié)構(gòu)界面的控制器
1> iOS8以后,iPhone和iPad都可以使用
2> MasterVc : 主視圖控制器 一般顯示在左邊
3> DetailVc : 明細(xì)視圖控制器 一般顯示在右邊
4> 默認(rèn)樣式:
iPad豎屏: 顯示明細(xì)控制器,可以通過手勢來顯隱主視圖
iPad橫屏: 顯示主視圖&明細(xì)視圖,不可以通過手勢顯隱主視圖
iPhone豎屏: 如果主視圖為UIViewController,則顯示主視圖;如果主視圖為UINavigationVc的子控制器,則會顯示明細(xì)控制器
iPhone橫屏: iPhone 6/s Plus下,會顯示左右結(jié)構(gòu),其他設(shè)備和iPhone豎屏?xí)r的顯示一樣
5> 創(chuàng)建splitViewController 在顯示前必須設(shè)置主視圖控制器,可以不設(shè)置明細(xì)控制器
6> SplitViewController可以通過addChildViewController添加子控制器,但是只有添加的第一個子控制器會被設(shè)置在主視圖控制器的位置上,第二個控制器會被設(shè)置在明細(xì)視圖控制器的位置上
7> 允許繼續(xù)添加,但是不會被顯示
- 關(guān)鍵屬性介紹
1.preferredDisplayMode:顯示模式
UISplitViewControllerDisplayModeAutomatic, 自動,默認(rèn)樣式
UISplitViewControllerDisplayModePrimaryHidden, 主視圖隱藏 橫豎屏主視圖都會隱藏,可以通過手勢來控制主視圖的顯隱
UISplitViewControllerDisplayModeAllVisible, 始終顯示 橫豎屏主視圖都會顯示,不可以通過手勢來控制主視圖的顯隱
UISplitViewControllerDisplayModePrimaryOverlay, 主視圖懸停 橫豎屏主視圖都會顯示,可以通過手勢來控制主視圖的顯隱
2.preferredPrimaryColumnWidthFraction:主視圖的寬度比例
主視圖的寬度比例 = 主視圖寬度 / SplitViewController整體寬度
主視圖的寬度比例不好控制,并且受最大值maximumPrimaryColumnWidth和最小值minimumPrimaryColumnWidth兩個屬性限制
通常設(shè)置一個具體的寬度,直接設(shè)置maximumPrimaryColumnWidth,這樣更適合以一張固定圖片來設(shè)置背景UI的需求