我的应用程序的很大一部分由web视图组成,以提供尚未通过本机实现提供的功能。网络团队没有计划为网站实施黑暗主题。因此,我的应用程序在iOS 13上的暗模式支持看起来会有点一半一半。

是否可以选择退出暗模式支持,这样我们的应用程序总是显示光模式,以匹配网站主题?


当前回答

在ViewController.swift文件中添加overrideUserInterfaceStyle = .light或在info中更改Appearance为“light”。plist文件

其他回答

根据苹果关于“在iOS上实现暗模式”(https://developer.apple.com/videos/play/wwdc2019/214/在31:13开始)的会话,可以在任何视图控制器或视图上设置overrideUserInterfaceStyle为UIUserInterfaceStyleLight或UIUserInterfaceStyleDark,这将被用于任何子视图或视图控制器的traitCollection中。

正如SeanR所提到的,你可以在应用程序的plist文件中设置uiuserinterfacstyle为Light或Dark来改变整个应用程序。

import UIKit

extension UIViewController {

    override open func awakeFromNib() {

        super.awakeFromNib()

        if #available(iOS 13.0, *) {

            overrideUserInterfaceStyle = .light

        }

    }
}

在Xcode 11中,你可以在整个应用中关闭暗模式:

去Info.plist 添加波纹管 <键> UIUserInterfaceStyle关键> < / 光<字符串> < /字符串>

信息。Plist将如下所示…

除了其他回答,根据我对以下问题的理解,你只需要在对iOS 13 SDK(使用XCode 11)编译时准备Dark模式。

系统假设应用程序链接到iOS 13或更高版本的SDK 支持光明和黑暗的外观。在iOS中,你指定 通过指定特定的界面样式来指定您想要的特定外观 到您的窗口、视图或视图控制器。您也可以禁用支持 黑暗模式完全使用信息。plist关键。

Link

你可以这样做:添加这个新键uiuserinterfacstyle到Info。plist,并将其值设置为Light。并检查警报控制器出现轻模式。

UIUserInterfaceStyle 光 如果你在你的整个应用程序中强制亮/暗模式,而不管用户的设置,通过添加关键uiuserinterfacstyle到你的信息。plist文件并将其值设置为Light或Dark。