我想知道是否有办法摆脱启动默认 Mac OS X 应用程序时获得的默认 NSMenu,而是显示 Finders/Systems NSMenu。
(尽管它可能很糟糕,设计明智)
如果应用程序被标记Info.plist
为仅后台 ( LSUIElement
),则其菜单栏将永远不会显示在屏幕上,因为该应用程序永远不会被视为最前面。这也将导致应用程序不会显示在 Dock 中,也不会显示在其他几个标准位置(应用程序切换器、强制退出窗口等)。如果你决定走这条路,你的应用程序通常应该提供某种替代 UI 来显示它正在运行并允许用户退出它(例如,将NSStatusItem添加到菜单栏)。
话虽如此,您的应用程序的菜单栏应该始终包含一些项目,无论它是否显示,包括:
这是因为这些菜单项具有用户认为始终可用的通用键盘快捷键(例如,Cmd+X/C/V 用于剪切/复制/粘贴)。