我正在快速开发Yosemite应用程序并遇到障碍。
我有多个视图正常工作,现在我想实现自定义菜单操作。为了简化答案,我将如何实现这个例子。我想单击一个菜单按钮,让它在viewcontroller上更改文本。我尝试过设置IBActions,但我不确定如何从AppDelegate建立到viewcontroller的链接。你怎么连接这两个?
我还在搞清楚这些东西,所以任何见解都会很棒。提前致谢。
* UPDATE。我尝试制作一个对象并以这种方式链接它。没运气。
按"测试"它打印测试,但它在自己的类中。我需要在我的主ViewController类中做一些事情。我该怎么做这个参考?
答案 0 :(得分:5)
从NSViewController
获取NSWindow
是一个简单的解决方案
如果您的应用有多个窗口,请通过keyWindow
或windows
NSApplication
选择合适的窗口。
@IBAction func pressed(sender: AnyObject) {
if let window = NSApplication.sharedApplication().mainWindow {
if let viewController = window.contentViewController as? YourViewController {
// do stuff
...
}
}
}