我有一个具有以下布局的 UISplitViewController
,由一个主视图 Controller 和一个详细 View Controller 组成。
这对于具有单个 View 的基本 Split View来说效果很好,但我需要支持来自 UITableViewController
(主视图)的多个 segue,并且在数据传递之前不加载详细 View ;否则应用程序将因可选错误而崩溃。
我试过这样设置;
这将加载一个空白 viewController
作为详细信息 View 当 uisplitViewController
加载时,以及选择一行时,i具有详细信息,请访问其他 View Controller ,该详细信息将应在 UISplitViewController
中显示为详细 View 。
不幸的是,这并不完全有效,所有数据都在没有崩溃的情况下传递和加载,但细节 segues 实际上将 View Controller 加载到 Split View的主视图窗口中,而不是细节 View 。
有点像,
我如何拥有多个细节 View Controller ,直到从主视图 UITableViewController
启动 segue 并在细节窗口中打开时才加载这些 Controller ?
这是来自 MasterViewController 的代码
override func viewDidLoad() {
super.viewDidLoad()
self.splitViewController!.delegate = self;
self.splitViewController!.preferredDisplayMode = UISplitViewControllerDisplayMode.AllVisible
self.extendedLayoutIncludesOpaqueBars = true
}
func splitViewController(splitViewController: UISplitViewController, collapseSecondaryViewController secondaryViewController: UIViewController, ontoPrimaryViewController primaryViewController: UIViewController) -> Bool {
return true
}
最佳答案
如果转场已经存在,则尝试将转场从主视图移除到其他详细 View ,然后使用详细转场重新创建它们。
关于ios - 主视图窗口中的 UISplitViewController 详细 View Controller 加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36313262/