applicationWillTerminate 未调用

发布于 2024-12-17 03:12:23 字数 252 浏览 0 评论 0原文

我实现了 applicationWillTerminate 方法,但从未调用它

-(void)applicationWillTerminate:(NSNotification *)notification
{
    [[NSApplication sharedApplication] terminate:self];
    NSLog(@"EOP");
}

如何在应用程序关闭之前执行一些代码?

谢谢

I implemented applicationWillTerminate method, but it's never called

-(void)applicationWillTerminate:(NSNotification *)notification
{
    [[NSApplication sharedApplication] terminate:self];
    NSLog(@"EOP");
}

How to execute some code before application close?

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

走野 2024-12-24 03:12:23

我刚刚添加了

-(BOOL) applicationShouldTerminateAfterLastWindowClosed:(NSApplication *) sender{
return YES;
}

Now applicationWillTerminate 调用

I just added

-(BOOL) applicationShouldTerminateAfterLastWindowClosed:(NSApplication *) sender{
return YES;
}

Now applicationWillTerminate invokes

等待圉鍢 2024-12-24 03:12:23

解决方案 1:

在项目信息(NSSupportsSuddenTermination 键)中将应用程序可以立即终止设置为NO
然后,在应用程序退出之前,将调用 applicationWillTerminate 函数。

解决方案 2:

如果您需要能够取消终止,那么您应该重写 applicationShouldTerminate 函数

func applicationShouldTerminate(_ sender: NSApplication) -> NSApplication.TerminateReply {
    // Do some stuff before quitting for good
    return .terminateNow
}

Solution 1:

Set the Application can be killed immediately to NO in the project info ( NSSupportsSuddenTermination key ).
The applicationWillTerminate function will then be called before the application quits.

Solution 2:

If you need to be able to cancel the termination, then you should rather override the applicationShouldTerminate function

func applicationShouldTerminate(_ sender: NSApplication) -> NSApplication.TerminateReply {
    // Do some stuff before quitting for good
    return .terminateNow
}
流心雨 2024-12-24 03:12:23

请将您的 plist 中的键 (UIApplicationExitsOnSuspend) 设置为 YES

键:UIApplicationExitsOnSuspend
类型:布尔
值:是

please set a key (UIApplicationExitsOnSuspend) in your plist to YES.

Key : UIApplicationExitsOnSuspend
Type : Boolean
Value :YES

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文