如何支持现有 swift 应用程序 iOS 的暗模式?

How to support support dark mode for existing swift app iOS?

我正在使用 Xcode 版本 11.3.1,我们在最新版本中不支持暗模式功能。在 iOS13 中检查深色模式时,所有文本都不可见。它在轻模式下工作。但是我也需要支持深色模式。

在检查暗模式问题时,我找到了如下解决方案来为整个应用程序设置亮模式,即使用户 select 暗模式:

<key>UIUserInterfaceStyle</key>
<string>Light</string>

但是其中一些人提到,如果我们在 plist 中设置这个 UIUserInterfaceStyle,它将不允许将应用程序提交到 App Store。

我的问题是,我想支持深色模式,我也想将应用程序提交到 App Store。

我只需要支持轻模式,我也想将应用提交到应用商店。

注意:我使用的是 app delegate 而不是 SwiftUI。

如果您未在 info.plist 上设置 UIUserInterfaceStyle,则应用程序会根据系统自动启用深色模式。如果系统以暗模式运行,则应用程序将以暗模式启动。

但是要显示所有文本或其他内容,您必须使用系统颜色作为背景以及文本。或者您可以为深色模式或浅色模式使用自定义颜色。

要使您的应用在深色模式下看起来也一样,并且不妨碍现有的 UI 应用,您可以在

中使用这行代码
info.plist <key>UIUserInterfaceStyle</key>
<string>Light</string>

这样您的应用将只支持灯光模式。