使用 LSUIElement(又名无 Dock 图标)但保留“文件、编辑、查看”菜单栏?

cks*_*ubs 1 macos cocoa objective-c

我希望我的应用程序具有:

  • 菜单栏额外图标(按时钟)
  • 应用程序菜单栏(“文件、编辑、查看等”)

希望我的应用程序具有:

  • 停靠图标

这可能吗?如果重要的话,我将通过 Mac App Store 部署 10.6 和 10.7。

在 info.plist 文件中设置 LSUIElement 会移除停靠栏图标,但也会移除菜单栏。

Mic*_*one 5

NSApplication 的 setActivationPolicy可能就是您所追求的。

[NSApp setActivationPolicy:NSApplicationActivationPolicyAccessory];
Run Code Online (Sandbox Code Playgroud)

请注意讨论:

目前,NSApplicationActivationPolicyNone 和 NSApplicationActivationPolicyAccessory 可能会改为 NSApplicationActivationPolicyRegular,但不支持其他修改。需要链接到运行应用程序

根据NSApplicationActivationPolicyAccessory 的文档,您可能需要以编程方式确保菜单栏出现。