ios - 为什么我的 iOS 应用程序不禁用深色模式?

标签 ios swift ios13 xcode11 ios-darkmode

所以...我尝试根据苹果文档将我的应用程序设置为通过强制浅色模式来禁用 iOS 13 深色模式,在模拟器中所有尝试都工作正常,但是当我在真实设备上尝试时,没有任何反应,这是就像我从未更改过代码一样

第一次尝试

覆盖窗口、 View 或 View Controller 的界面样式

我尝试将此代码示例放入我的 viewDidLoad()

没有任何变化

if #available(iOS 13.0, *) {
   overrideUserInterfaceStyle = .light
} else {
  // Fallback on earlier versions
}

第二次尝试

选择完全退出深色模式

系统会自动选择与 iOS 13.0 或更高版本 SDK 链接的任何应用程序以浅色和深色外观。如果您需要额外的时间来处理应用程序的深色模式支持,您可以通过在应用程序的 Info.plist 文件中包含 UIUserInterfaceStyle 键(值为 Light)来暂时选择退出。将此键设置为 Light 会导致系统忽略用户的首选项并始终将浅色外观应用于您的应用。

没有任何改变

Apple Documentation: Choosing a Specific Interface Style for Your iOS App

如果有人知道我如何仅在灯光模式下设置我的应用程序......我将非常感激:D

最佳答案

您只需在应用 info.plist 中添加一个新键 UIUserInterfaceStyle (注意:Xcode 12 及更高版本已重命名为 外观)并将其值设置为浅色或深色。这会将应用程序默认样式覆盖为您提供的值。

因此您无需费心将其放在其他地方

关于ios - 为什么我的 iOS 应用程序不禁用深色模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58609422/

相关文章:

android - 如何发现我为 iOS 编译

ios - 崩溃 network_proxy_decrement_outstanding

swift - OperationQueue 的“进度”属性在 iOS 13 中不起作用

ios - 带参数调用 Swift 闭包

ios - 自定义 UIMenuItem 不适用于 PDFKit 的 PDFView

ios - 新的 iOS 13 模态演示 : Presenting Controller Doesn't Move Down

ios - 无法让 UIScrollView 进行缩放和滚动

ios - 我如何访问和编辑一个对象深入另一个对象 (swift)

iOS 按钮在自定义 View 中不起作用

ios - 使用 UICollectionView 调整 UICollectionViewCell 的大小