[英]How to make a menubar app look good with “Dark Mode” in Yosemite?
在开发菜单栏应用程序时,我很难找到使应用程序看起来很好的首选方法。 我原本以为Apple控件基本上会在很大程度上处理这个问题,但看起来并非如此。
确保菜单栏应用程序在明暗模式下看起来都很好的首选方法是什么? 我是否缺少一些可以更轻松地实现此功能的控制功能,还是需要手动检测模式并适当地修改控件?
我有一个菜单栏应用程序 ,我没有做任何事情让它在黑暗的主题中看起来很好。
轻主题:
黑暗主题:
您需要做的最重要的事情是:
使用系统颜色(例如, [NSColor textColor]
, [NSColor textBackgroundColor]
。这些颜色会自动适应各种主题。请参阅Apple OS X人机界面指南的颜色和排版部分。
使用模板图像。 这些也适应颜色变化。 请参阅Apple OS X人机界面指南的系统提供的图像部分 。
值得注意的是,Apple并没有简单地以编程方式检测正在运行的颜色主题(有一些技巧,但我不知道任何受制裁的方法)。 我的感觉是他们故意这样做,所以开发人员不做自定义的每个主题的东西。 使用系统颜色和模板图像,您不应该这样做。
更新:示例项目: https : //github.com/zpasternack/MenuBarTest
好吧,你没有解释(或显示)它看起来很糟糕的方式。 您可能正在使用普通的非模板图像作为其图标。 您应该使用模板图像,这是一个图像,其唯一重要的部分是alpha蒙版。 您可以通过使用“Template”后缀(例如“FooTemplate.png”)或通过调用-setTemplate:
来告诉系统它是模板图像。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.