macOS 深色模式和 NSAboutPanelOptionCredits

macOS Dark Mode and NSAboutPanelOptionCredits

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

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

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

问题是,当我切换到深色模式时,文件中的文本仍然是黑色,而其他自动包含的文本变为白色(应用程序名称、版本等...)我已经打开了 . rtf 文件并且没有继承设置或任何类似的设置。

知道我做错了什么吗,and/or 不见了?

感谢任何想法。 谢谢!

诀窍是使用语义颜色。

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

Xcode 将 Developer 颜色添加到颜色选择器。 Select 适合您文本的语义颜色;我倾向于使用 labelColorsecondaryLabelColorlinkColor

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

10.14 AppKit Release Notes 可能有帮助:

Appearance-Aware Credits

You make the credits area match the appearance of an app by supplying the credits as an attributed string or by placing a Credits.rtf or Credits.rtfd in your app's bundle. Use the proper system colors, like textColor, linkColor, and labelColor, to make text display correctly in any appearance. If you use .rtf or .rtfd files to supply text for the credits area, the file must be saved using macOS 10.14 (beta 5 or later) to receive the appearance-aware treatment. If you create the file .rtf or .rtfd files on an earlier version of macOS, the appearance-aware treatment is only applied if the file contains only black text with no background color.

谁需要它..

打开时间: