9

我在应用商店中有一个名为 Range 的相当简单的应用程序,我想让暗模式兼容 macOS 10.14。我注意到关于窗口并没有改变所有的文本颜色。

我正在使用 NSAboutPanelOptionCredits,我只需要捆绑 Credits.rtf 文件,然后应用程序处理其余部分。

https://developer.apple.com/documentation/appkit/nsaboutpaneloptioncredits?language=objc

问题是,当我更改为暗模式时,文件中的文本保持黑色,而其他自动包含的文本更改为白色(应用程序名称、版本等...)我打开了 .rtf 文件并且有没有继承设置,或任何类似的设置。

知道我做错了什么和/或遗漏了什么吗?

欣赏任何想法。谢谢!

关于窗户的光 窗户暗

4

3 回答 3

10

诀窍是使用语义颜色。

使用 Xcode,编辑您的 RTF 文件。选择文本并调出文本颜色选择器。

Xcode 将开发人员颜色添加到颜色选择器。为您的文本选择适当的语义颜色;我倾向于使用labelColor,secondaryLabelColorlinkColor.

当您切换到深色模式时,这些语义颜色会相应更改。

于 2018-12-08T04:36:28.207 回答
2

10.14 AppKit 发行说明可能会有所帮助:

外观感知学分

您可以通过提供积分作为属性字符串或在应用程序包中放置 Credits.rtf 或 Credits.rtfd 来使积分区域与应用程序的外观相匹配。使用适当的系统颜色,如 textColor、linkColor 和 labelColor,以使文本以任何外观正确显示。如果您使用 .rtf 或 .rtfd 文件为演职员表区域提供文本,则必须使用 macOS 10.14(beta 5 或更高版本)保存该文件才能接受外观感知处理。如果您在早期版本的 macOS 上创建文件 .rtf 或 .rtfd 文件,则仅当文件仅包含没有背景颜色的黑色文本时才会应用外观感知处理。

于 2018-12-11T00:25:54.647 回答
2

谁需要它。。 在此处输入图像描述

打开时:

在此处输入图像描述

于 2019-05-22T08:32:27.667 回答