我用Xib而不是Storyboard打开了新的Cocoa项目。我想在单击"Livelli"按钮时打开工作表视图控制器。按钮"Livelli"位于MainMenu.xib中。
我连接按钮"Livelli"来执行操作并编写了以下代码:
@IBAction func LivelliBtn(sender: AnyObject) {
window.contentViewController?.presentViewControllerAsSheet(LevelScrollController())
Swift.print("abc")
}
LevelScrollController 是一个 NSViewController,它将显示一个自定义的 NSView 和关闭自身的按钮。
控制台显示"abc",因此我们需要了解"LivelliBtn"是在单击按钮但没有打开工作表时执行的!
此外,如果我按如下方式编辑函数"LivelliBtn":
@IBAction func LivelliBtn(sender: AnyObject) {
window.contentViewController = LevelScrollController()
window.contentViewController?.presentViewControllerAsSheet(LevelScrollController())
Swift.print("abc")
}
当前视图控制器作为工作表方法工作正常。问题是我更换了背景视图控制器,当我关闭工作表时,我没有返回到以前的视图......
如何在主菜单窗口上显示工作表?
我导致创建第二个"MainViewController"来取代MainMenu的问题。
在应用程序代表中,我添加了以下行
func applicationDidFinishLaunching(aNotification: NSNotification) {
window.contentViewController = MainViewController()
}
其中 MainViewController 是一个视图控制器,它对工作表本身进行分类