繁体   English   中英

如何在Yosemite中使用“暗模式”使菜单栏应用程序看起来很好?

[英]How to make a menubar app look good with “Dark Mode” in Yosemite?

在开发菜单栏应用程序时,我很难找到使应用程序看起来很好的首选方法。 我原本以为Apple控件基本上会在很大程度上处理这个问题,但看起来并非如此。

确保菜单栏应用程序在明暗模式下看起来都很好的首选方法是什么? 我是否缺少一些可以更轻松地实现此功能的控制功能,还是需要手动检测模式并适当地修改控件?

我有一个菜单栏应用程序 ,我没有做任何事情让它在黑暗的主题中看起来很好。

轻主题:

轻主题

黑暗主题:

黑暗的主题

您需要做的最重要的事情是:

  1. 使用系统颜色(例如, [NSColor textColor][NSColor textBackgroundColor] 。这些颜色会自动适应各种主题。请参阅Apple OS X人机界面指南的颜色和排版部分。

  2. 使用模板图像。 这些也适应颜色变化。 请参阅Apple OS X人机界面指南的系统提供的图像部分

值得注意的是,Apple并没有简单地以编程方式检测正在运行的颜色主题(有一些技巧,但我不知道任何受制裁的方法)。 我的感觉是他们故意这样做,所以开发人员不做自定义的每个主题的东西。 使用系统颜色和模板图像,您不应该这样做。

更新:示例项目: https//github.com/zpasternack/MenuBarTest

好吧,你没有解释(或显示)它看起来很糟糕的方式。 您可能正在使用普通的非模板图像作为其图标。 您应该使用模板图像,这是一个图像,其唯一重要的部分是alpha蒙版。 您可以通过使用“Template”后缀(例如“FooTemplate.png”)或通过调用-setTemplate:来告诉系统它是模板图像。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM