【发布时间】:2016-06-14 05:26:32
【问题描述】:
我正在制作我的第一个通用应用程序,到目前为止一切都很好,但我在 iPad 上遇到了 UISplitViewController 的问题。
如何使 UISplitViewController 在 iPhone 处于纵向模式时的行为与 iPhone 上的一样?
就像在纵向模式下,当我点击它时只显示主屏幕,它会导航到详细信息屏幕,而在横向模式下,它们会并排显示。
现在发生的情况是,它仅以纵向显示详细信息屏幕,并以横向模式显示它们。
对于 iPhone,我在主视图中使用此代码来解决此问题
func splitViewController(splitViewController: UISplitViewController, collapseSecondaryViewController secondaryViewController: UIViewController, ontoPrimaryViewController primaryViewController: UIViewController) -> Bool {
return true
}
但这不适用于 iPad,我在这里找到了另一个代码,但也没有用。
func splitViewController(svc: UISplitViewController, willHideViewController aViewController: UIViewController, withBarButtonItem barButtonItem: UIBarButtonItem, forPopoverController pc: UIPopoverController) {
self.navigationItem.leftBarButtonItem?.target?.performSelector((self.navigationItem.leftBarButtonItem?.action)!, withObject: self.navigationItem)
}
其他代码可能你需要知道,我在主视图控制器的 viewDidLoad 中添加了这些代码
self.splitViewController?.delegate = self
self.splitViewController?.preferredDisplayMode = UISplitViewControllerDisplayMode.PrimaryOverlay
self.splitViewController!.maximumPrimaryColumnWidth = splitViewController!.view.bounds.size.width;
self.splitViewController!.preferredPrimaryColumnWidthFraction = 0.3
如果有人能帮我找到这个问题的解决方案,我将非常感激
【问题讨论】:
标签: ios iphone swift ipad uisplitviewcontroller