gpt4 book ai didi

objective-c - applicationWillTerminate 不会被调用

转载 作者:行者123 更新时间:2023-12-03 16:23:01 26 4
gpt4 key购买 nike

我想在终止之前保存数据,因此我的 AppControll 类符合 NSApplicationDelegate 协议(protocol),并声明了该方法;在界面生成器中,我将窗口的委托(delegate)导出绑定(bind)到 AppController,但无法调用该方法。

我哪里错了,我该怎么办?

最佳答案

您要从 Xcode 终止该应用程序吗?或者,您的 Info.plist 中是否启用了突然终止?

其中任何一个都会导致 SIGTERM 信号发送到应用程序,立即终止它,而 NSApplication 实例没有机会向其委托(delegate)发送 applicationWillTerminate:信息。 (这就是突然终止的点:您的应用程序立即终止。您可以通过编程方式将其关闭和打开,有时这会很糟糕。)

尝试退出应用程序本身(应用程序菜单中的退出菜单项),或使用 Dock 退出它(右键单击应用程序的图 block 并选择“退出”)。只要突然终止被禁用(或从未启用),其中任何一个都会导致您的应用程序对象发送 applicationWillTerminate: 消息。

还要检查您的委托(delegate)是否收到其他应用程序委托(delegate)消息,例如 applicationWillFinishLaunching:,并确保您将 socket 连接到正确的 Nib (您的 MainMenu Nib )。

关于objective-c - applicationWillTerminate 不会被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4320557/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com