【发布时间】:2015-09-03 06:02:00
【问题描述】:
在开发菜单栏应用程序时,我很难找到让应用程序看起来真正好看的首选方法。我原以为 Apple 控件基本上会在很大程度上处理这个问题,但似乎没有。
确保菜单栏应用在明暗模式下都好看的首选方法是什么?我是否缺少一些更容易实现这一点的控制功能,还是我需要手动检测模式并适当地修改控制?
【问题讨论】:
标签: cocoa osx-yosemite menubar rubymotion osx-elcapitan
在开发菜单栏应用程序时,我很难找到让应用程序看起来真正好看的首选方法。我原以为 Apple 控件基本上会在很大程度上处理这个问题,但似乎没有。
确保菜单栏应用在明暗模式下都好看的首选方法是什么?我是否缺少一些更容易实现这一点的控制功能,还是我需要手动检测模式并适当地修改控制?
【问题讨论】:
标签: cocoa osx-yosemite menubar rubymotion osx-elcapitan
I have a menubar app,我不需要做任何事情让它在黑暗主题中看起来不错。
浅色主题:
深色主题:
您需要做的最重要的事情是:
使用系统颜色(例如,[NSColor textColor]、[NSColor textBackgroundColor]。这些颜色会自动适应各种主题。请参阅 Apple 的 OS X 人机界面指南的 Color and Typography 部分。
使用模板图像。这些也适应颜色变化。请参阅 Apple 的 OS X 人机界面指南的System-Provided Images section。
值得注意的是,Apple 并没有让以编程方式检测正在运行的颜色主题变得容易(有一些技巧,但我不知道有任何认可的方法)。我的感觉是他们是故意这样做的,因此开发人员不会根据主题进行自定义。不必使用系统颜色和模板图像。
【讨论】:
嗯,你还没有解释(或显示)它看起来不好的地方。可能,您正在为其图标使用普通的非模板图像。您应该使用模板图像,该图像的唯一重要部分是 alpha 蒙版。您可以通过使用“Template”后缀(例如“FooTemplate.png”)或在其上调用-setTemplate: 来告诉系统它是模板图像。
【讨论】: