OS X 菜单栏附加功能 + Apple HIG + UX 模式冲突 - 退出时不退出

Posted

技术标签:

【中文标题】OS X 菜单栏附加功能 + Apple HIG + UX 模式冲突 - 退出时不退出【英文标题】:OS X menubar extras + Apple HIG + UX pattern in conflict - when quit isn't quit 【发布时间】:2015-01-26 21:31:52 【问题描述】:

快速搜索Apple's Human Interface Guidelines and Developer Library yields an unequivocal guideline:

用户而不是应用程序将菜单栏附加功能放置在菜单栏中。

轶事数据支持这一点:提交一个应用程序 - 在退出停靠进程/主视图时,额外的运行 - 产生一个整洁的拒绝。

现在 - 我是一名用户体验设计师 (UXD),我的意思是,我通常在移动和网络空间工作。所以请原谅我缺少 Obj C 印章,谢谢。

我非常了解指南和行为/模式:Skitch、Wunderlist、Evernote 等应用程序非常清楚地在主应用程序退出时的菜单栏中留下了额外的(通常称为 HelperApp)运行。他们都提供明确的用户切换此 w/i 偏好。

没有关于处理用户控制这一要求的其他人机界面指南。这必须包含在入职培训中吗?第一次退出时的对话?再说一遍:我可以在 UX 方面谈论最佳行为,但我的(非常资深的)开发人员想要授权 - 其他人如何不被拒绝?

Focus:为了避免被拒绝,需要/被强制执行哪些用户控制方式? 已知/给定:包含在偏好中 其他:???

经过数小时的在线搜索和 Apple 开发指南,我谦虚地提出这个问题。根本没有时间玩要求的狂欢游戏:猜测、被拒绝、重复。提前致谢。

【问题讨论】:

【参考方案1】:

您的用户界面中是否有一个按钮可以将菜单额外添加到菜单栏?还是您的应用在没有用户告知的情况下自动执行此操作?

我认为这就是区别,您的应用只能在收到指示时添加额外内容。此外,如果您的应用程序的主要目的是创建一个额外的菜单(例如,我有一个在菜单栏中放置日历的应用程序),那么仅启动应用程序就是一个隐式指令,因此可以自动添加。

归根结底,这条规则真的很模糊,无法澄清。归根结底,用户的菜单栏中不应该有很多额外的菜单,除非用户明确选择拥有它们。因此,除非您的应用真的需要额外的菜单,否则您必须默认禁用它。

如果您认为审核者应该允许您的应用通过,请回复拒绝说明您的立场。完成此操作后,我已经批准了一次应用更改。

如果他们仍然拒绝您的应用,那么您可以对应用拒绝提出申诉。

或者,只需默认禁用额外的菜单,并在某处有一个按钮将其添加到菜单栏。

此外,所有这些都假设您使用的是 NSStatusItem 而不是“真正的”菜单额外系统——这是一个私有 API。据我所知,只有 NSStatusItem 菜单附加功能可以放在应用商店中。

【讨论】:

以上是关于OS X 菜单栏附加功能 + Apple HIG + UX 模式冲突 - 退出时不退出的主要内容,如果未能解决你的问题,请参考以下文章

Mac OS X,让一个窗口越过菜单栏

检查 NSStatusItem 当前是不是显示在 OS X NSStatusBar 主菜单栏中

在 OS X 的停靠栏上下文菜单中显示图标?

如何将我的程序添加到 OS X 系统菜单栏?

Adobe AIR 全屏(OS X Mavericks)菜单栏

在 OS X 菜单栏中更改 Tkinter 应用程序的标题