Mic*_*elC 5 cocoa cocoa-touch macruby rubymotion
什么是OS X相当于ios'(Ruby风格):
@window.rootViewController = NSViewController.alloc.initWithNibName(nil, bundle: nil)
有两个方面:
我正在尝试用代码构建一个窗口(没有nib)......并按照Pragmatic的RubyMotion程序员指南(为iOS编写).
在我的情况下,我有一个窗口拥有的单个视图控制器,所以以下代码对我有用:
let viewController = NSApplication.sharedApplication().keyWindow!.contentViewController as! MyViewController
MyViewController我的NSViewController子类在哪里.
OS X 应用程序中没有“rootViewController”的概念。这是因为应用程序由一个或多个窗口和/或菜单栏组成,其中没有一个是“根”。
但是,您可以从视图控制器开始找到窗口控制器:
[[[self view] window] delegate];
如果您希望在窗口控制器上调用自定义方法,那么最好创建一个委托,这样有关控制器的假设就不会给您带来麻烦。
相当于NSViewController.alloc.initWithNibName(nil, bundle: nil):
[[NSViewController alloc] initWithNibName:nil bundle:nil]; 
方法调用嵌套在方括号中,具有多个参数的方法很简单label1:parameter1 label2:parameter2...
不过,通常情况下,您会有一个NSViewController可以实例化的自定义子类。