0

多年后,我重新打开了这个遗留的 Apple 示例代码,它是自定义安装程序插件的一个示例。该项目太旧了,附带一个旧版(Bundle)格式的测试包,其资源文件是旧版 .nib,Xcode 12 无法打开和编辑。在上面的存储库中,我已将这个原始 nib 替换为通过在 Xcode 7 中打开 nib 并重新保存而获得的副本。该插件现在可以工作,并且可以编辑其 UI,但我遇到了问题。在任何情况下,使用此安装程序插件创建的包都会使整个包始终以浅色模式显示。我的系统总是处于暗模式,但是当安装程序有插件时,整个包以亮模式显示。我试过了:

  1. 示例(Bundle)测试包是最简单的测试方法:您可以使用显示包内容打开它并创建一个层次结构,如自述文件中所述。生成的包使插件正常工作,但始终以浅色模式显示。

  2. 我尝试使用现代工具(如 packagebuild 和 productbuild)将插件嵌入到平面包中。生成的包使插件正常工作,但始终以浅色模式显示。

任何帮助是极大的赞赏。谢谢。

编辑

我刚刚尝试从头开始创建一个新的安装程序插件。相同的行为,仅在灯光模式下显示。谢谢

4

1 回答 1

0

我为此打开了开发人员代码级别的支持票,我很高兴收到回复,并且可以做到!伟大的。这是答案:

根据您的发现,解决方案是在安装程序插件包中实现“NSRequiresAquaSystemAppearance”plist 键。将此键设置为 YES 可启用当前 Aqua 设置,设置为 NO 可禁用 Aqua 匹配。

一开始我也不是很明白。必须将相关键添加到 info.plist 中的插件包中,并且默认为 YES,根据我的理解,这意味着强制光出现。我已将其设置为 NO,并且带有插件的包现在可以在需要时正确显示为黑暗。感谢您的关注。

于 2021-04-11T21:07:07.863 回答