ios - Swift:通用应用程序上的 Split View Controller 不是初始 View Controller

标签 ios swift uisplitviewcontroller

我有一个通用应用程序,想为我的设置 View 添加一个 Split View Controller 。这意味着我需要一个 Split View Controller ,它不是初始 View Controller ,它将处理 SettingMainTableViewController(主设置页面)和 SettingDetailViewController(显示各个设置)之间的交互。我在网上看到的所有指南和教程都假定 Split View Controller 是初始 View Controller 。

流程将是 MainMenuViewController -> SettingMainTableViewController -> SettingDetailViewController 如果在 ipad 上将显示为拆分,如果是 iphone 则不会拆分。这有可能实现吗?我将如何实现?

current setup

最佳答案

无需将其设置为 rootViewController,您可以像使用其他 UIViewController 一样使用它。您可以以模态方式呈现,甚至可以将其推送到导航堆栈。其中一个例子如下:

let rootViewController: UIViewController = UIViewController()
rootViewController.view.backgroundColor = UIColor.red
let navVC: UINavigationController = UINavigationController(rootViewController: rootViewController)

let detailViewController: UIViewController = UIViewController()
detailViewController.view.backgroundColor = UIColor.blue

let splitVC: UISplitViewController = UISplitViewController()
splitVC.viewControllers = [navVC, detailViewController]
self.present(splitVC, animated: true, completion: nil)

如果有任何疑问,请告诉我

关于ios - Swift:通用应用程序上的 Split View Controller 不是初始 View Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42345667/

相关文章:

iphone - 如何将 xcode 4.1 iPhone 应用程序转换为通用应用程序

ios - 在 iOS 中的 amazon s3 上设置文件权限

xcode - 类声明无法关闭外部作用域中定义的值 'fulfill' - Swift 2.0

iOS 11.0 推送 View Controller 与 navigationItem.searchController 的问题

ios - swift 3 中的弹出窗口代码不起作用

iOS 通过 UISplitView 呈现 View 可能吗?

iOS 8 无法连接到 BLE。可以连接到 iOS 9

ios - Firebase 从异步调用返回 bool 值

ios - [CustomViewController respondsToSelector :]: message sent to deallocated instance

swift - 在 UISplitViewController 中显示来自详细 View Controller 的 ViewController