如何在Windows关闭时退出cocoa应用程序?

pro*_*eek 84 cocoa objective-c

当我点击左上角的红色按钮时,我需要退出Cocoa App.

在此输入图像描述

我发现这个页面说

因此,首先需要做的是将要关闭的窗口连接到笔尖中的IBOutlet.对于此示例,我将窗口连接到名为"mainWindow"的插座.

我怎样才能做到这一点?我在xib文件中找到了Windows,但是如何将它连接到nib中的IBOutlet?

或者,有没有办法退出可可应用程序点击红色按钮?

编辑

我应该把代码放在automatically generated delegate file.

ugh*_*fhw 220

应用程序的委托有一个可选方法,它将自动执行此操作.您所要做的就是将其添加到实现中.您不需要创建插座或任何东西.

- (BOOL)applicationShouldTerminateAfterLastWindowClosed:(NSApplication *)theApplication {
    return YES;
}
Run Code Online (Sandbox Code Playgroud)

  • 它确实有效,但您可能已将代码放在错误的位置.确保它在您的应用程序的委托中. (13认同)
  • 只是想给swift3版本:func applicationShouldTerminateAfterLastWindowClosed(_ theApplication:NSApplication) - > Bool {return true} (3认同)

Mac*_*ade 7

看看NSApplicationDelegate协议,尤其是applicationShouldTerminateAfterLastWindowClosed:方法......

http://developer.apple.com/library/mac/#documentation/cocoa/reference/NSApplicationDelegate_Protocol/Reference/Reference.html