Jes*_*sus 3 macos cocoa objective-c xcode5
我正在 Xcode5 中为 MacOSX 开发可可应用程序,我想通过按一个按钮从当前窗口打开另一个窗口,这是我的代码:
- (IBAction)openWindow:(id)sender {
WindowController *controllerWindow = [[WindowController alloc] initWithWindowNibName:@"WindowController"];
[controllerWindow showWindow:nil];
[[controllerWindow window] makeMainWindow];
}
Run Code Online (Sandbox Code Playgroud)
到目前为止,我可以看到窗口出现一秒钟,然后就消失了,如何正确执行此操作???
窗口和窗口控制器在此方法范围之外的任何地方都没有强引用。所以在那之后,他们被释放了。
通常,您会将窗口控制器添加到某个容器中,例如应用程序委托中的数组。该数组将保留窗口控制器。窗口控制器可以挂在窗口上。
将 action 方法放在应用程序委托中也是有意义的。您的按钮应该只向响应者链发送一个选择器。