首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么setPresentationOptions和LSUIElement不能一起使用?

为什么setPresentationOptions和LSUIElement不能一起使用?
EN

Stack Overflow用户
提问于 2015-05-19 13:48:53
回答 1查看 905关注 0票数 0

代码:

代码语言:javascript
复制
[NSApp setPresentationOptions: NSApplicationPresentationHideMenuBar | NSApplicationPresentationHideDock];

它隐藏了Dock和MenuBar OSX。

当我将键LSUIElement添加到我的Info.plist文件并重新运行我的代码时:停靠是隐藏的,但是MenuBar没有隐藏。

为什么?如何在添加MenuBar后隐藏LSUIElement?

EN

回答 1

Stack Overflow用户

发布于 2015-05-20 05:34:17

好吧,它应该永远隐藏主菜单,但是在plist中使用LSUIElement是一种比使用setActivationPolicysetPresentationOptions更古老的方法,所以您可能想让[NSApp setActivationPolicy:NSApplicationActivationPolicyAccessory]试一试。

LSUIElement的做事方式不支持运行时的更改。你把新旧混为一谈。反对使用LSUIElement,并在OSX 10.9+上使用setActivationPolicy

有很多关于这方面的讨论。This is a good answer。我写了一个关于当用户“退出”应用程序here时如何切换到附件模式的答案,它使用了LSUIElement会破坏的运行时功能。所以不要用它。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30327597

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档