我正试图迁移我的Objective-C,现在将Swift知识改进为适用于Mac OS X的应用程序。陡峭的学习曲线!在NSSplitViewController中更改视图
我试图在“详细视图”中加载NSSplitViewController
的不同视图,具体取决于您在“主视图”上按下的按钮。接下来的教程和搜索几小时使我一无所获。
我目前有:
import Cocoa
class MainSplitView: NSSplitViewController, BlissWindowDelegate {
var masterViewController: vcMainMenu {
let masterItem = splitViewItems[0] as! NSSplitViewItem
return masterItem.viewController as! vcMainMenu
}
override func viewDidLoad() {
super.viewDidLoad()
masterViewController.delegate = self
}
func userDidSelectFunction(function: String) {
switch function {
case "app":
println("You have selected to load the appointment screen")
case "cust":
println("You have selected to load the customer screen")
case "login":
println("I think I am here and you've clicked login?")
let detailItem = splitViewItems[1] as! NSSplitViewItem
// Trying to load the views here ... but no idea how to
case "admin":
println("You've clicked admin")
default:
println("Nothing here ...")
}
}
}
我使用BlissWindowDelegate
告诉我哪个按钮被按下。然后,我尝试从Storyboard中加载splitViewItem[1]
各种视图。但没有运气。任何人都可以指出我正确的方向吗?即使是一个体面的参考? Google上没有任何东西似乎可以提供帮助。
谢谢。
非常感谢这些想法。这是一个很好的解决方案,我会看看它。感谢您花时间回复。 – Darren
'MainSplitViewController'如何引用'detailController'?它不仅仅知道包含'detailController'的'NSSplitItem'吗? –
想通了。从我的主/菜单视图控制器中,我使用'parent?.childViewControllers [1]! NSTabViewController!'以获取对这些选项卡的引用。 –