【发布时间】:2013-01-25 17:21:33
【问题描述】:
我有一个基于 NSDocument 的应用程序。我想知道应用程序何时将退出以验证某些内容。我希望可能有一种方法,例如 applicationWillQuit,但是查看 NSDocument 和 NSApplication 的文档我找不到类似的东西。
【问题讨论】:
标签: xcode cocoa nsdocument nsapplication
我有一个基于 NSDocument 的应用程序。我想知道应用程序何时将退出以验证某些内容。我希望可能有一种方法,例如 applicationWillQuit,但是查看 NSDocument 和 NSApplication 的文档我找不到类似的东西。
【问题讨论】:
标签: xcode cocoa nsdocument nsapplication
您可以使用来自 NSApplication 的通知:
NSNotificationCenter* nc = [NSNotificationCenter defaultCenter];
[nc addObserver:self
selector:@selector(appWillTerminate:)
name:NSApplicationWillTerminateNotification
object:nil];
通过将对象作为nil 传递,只要对象触发通知,就会调用您的方法。
【讨论】:
- (NSApplicationTerminateReply)applicationShouldTerminate:(NSApplication *)sender 将是方法签名。
我们在 AppDelegate.swift 或 AppDelegate.m 类中有一个委托方法。您可以在关闭它之前使用它并向您的应用程序添加功能。
func applicationWillTerminate(_ aNotification: Notification) {
// Insert code here to tear down your application
}
【讨论】: