xcode(os x):在自定义视图控制器失败的情况下单击按钮

时间:2013-07-30 16:32:40

标签: nsviewcontroller

OSX 10.7.5 - XCode 4.6.1 - 应用程序OSX,而​​不是iOS。 代码很简单。
一个Window > contentWiew > subView with ViewController > Button。该按钮使用ViewController.xib创建。

所有显示都按预期显示,但是当我点击按钮时,全部都会失败。所有对象都不是nil

ViewController *viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
NSView *aView = [NSView new];
aView = [viewController view];
[[_window contentView] addSubview:aView];

在控制台中:

[NSContentSizeLayoutConstraint buttonAct:]: unrecognized selector sent to instance 0x1061178a0

1 个答案:

答案 0 :(得分:0)

您创建一个视图控制器,该视图控制器具有与之关联的视图。您创建一个新的NSView。使用视图控制器的视图覆盖新创建的NSView。最后,将视图控制器视图的引用添加到窗口的内容视图中。

//this does the same as your above code
ViewController *viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
//in ios, you typically don't add things straight to the window
[[_window contentView] addSubview:viewController.view];

这就是buttonAct:不是NSContentSizeLayoutConstraint的类方法。

[NSContentSizeLayoutConstraint buttonAct:]: unrecognized selector sent to instance 0x1061178a0