在 iPhones 上的 UISplitViewController 中禁用横向扩展是指禁止用户在横屏模式下将 UISplitViewController 的主视图控制器和详细视图控制器同时显示在屏幕上。默认情况下,当用户将 iPhone 设备横向旋转时,UISplitViewController 会自动将主视图控制器和详细视图控制器并排显示。
禁用横向扩展可以通过以下步骤实现:
preferredDisplayMode
属性为 .primaryOverlay
。这将使主视图控制器以覆盖的方式显示在详细视图控制器上方。splitViewController(_:collapseSecondary:onto:)
方法,并返回 true
。这将告诉 UISplitViewController 在横屏模式下将详细视图控制器折叠起来,只显示主视图控制器。下面是一个示例代码:
class MainViewController: UIViewController, UISplitViewControllerDelegate {
override func viewDidLoad() {
super.viewDidLoad()
splitViewController?.delegate = self
splitViewController?.preferredDisplayMode = .primaryOverlay
}
func splitViewController(_ splitViewController: UISplitViewController, collapseSecondary secondaryViewController: UIViewController, onto primaryViewController: UIViewController) -> Bool {
return true
}
}
这样设置后,在 iPhone 设备横屏时,主视图控制器将以覆盖的方式显示在详细视图控制器上方,用户无法同时看到两个视图控制器。
适用场景: 禁用横向扩展在以下情况下可能会有用:
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云