macOS开发-如何让用户在点击关闭按钮时退出App
文章摘要
HeoGPT
这篇文章介绍了如何在macOS开发中让用户在点击关闭按钮时退出整个App,通过实现AppDelegate.swift文件里的applicationShouldTerminateAfterLastWindowClosed方法并返回true来实现。这个方法可以使得当App仅剩一个窗口时,用户按左上角关闭按钮时将退出整个App,符合用户习惯。
此内容根据文章生成,并经过人工审核,仅用于文章内容的解释与总结
投诉macOS典型的点击关闭后不退出app,但是我的Delspace实在没有后台运行的必要,毕竟就是一个清亮的小工具。在网上找了一下发现一个成功的方法。
本文为转载文章,以下内容来源于
macOS开发-如何让用户在点击关闭按钮时退出App:applicationShouldTerminateAfterLastWindowClosed
Lebus
最近自己盲撸了一个macOS应用,主要是为了方便学生能更高清的看在下的教学视频,摸爬滚打了一两个月终于准备上线了,打包后又出现官方责任的bug了(习惯性崩溃):
用户点击窗口左上角关闭按钮时无法退出App,只是关闭了这个窗口,上面的菜单栏依旧还在,但我再点击程序坞的App图标时也恢复不了窗口(官方所说的默认行为:隐藏App)
我并没有对关闭按钮做自定义,全部采用的是默认行为。
可现在的效果是四不像,也不是关闭App,也不是隐藏App(类似于最小化)
不能容忍。
大海捞针般找啊找啊,最后还是在文档里找到了:
1 | optional func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool |
这是NSApplicationDelegate
(App的生命周期相关)的一个方法,可以说很形象了
用法:
在AppDelegate.swift文件里,实现这个方法,返回true即可
1 | import Cocoa |
效果:
如果现在App仅剩一个窗口,用户按左上角关闭按钮时将退出整个App(等同于command+Q或右击程序坞点退出),符合用户习惯。
- 感谢你赐予我前进的力量
打赏者名单
因为你们的支持让我意识到写文章的价值🙏
本文是转载或翻译文章,版权归原作者所有。建议访问原文,转载本文请联系原作者。
评论
生成评论
匿名评论
违规举报
✅ 你无需删除空行,直接评论以获取最佳展示效果