首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >可以检测到用户在Xcode10.x的iPhone上选择了暗模式

可以检测到用户在Xcode10.x的iPhone上选择了暗模式
EN

Stack Overflow用户
提问于 2019-10-14 19:10:57
回答 1查看 260关注 0票数 0

我仍然在使用Xcode10.2.1,由于其他一些问题,我还没有升级到Xcode11。现在,我想要检测使用iOS 13的用户是否选择了暗模式或亮模式作为他们的应用程序设置。

根据苹果公司的文档,如果开发人员通过以前的xcode构建应用程序,应用程序将默认处于轻量级模式,这是我的情况,这是很好的。

那么,有没有办法检测用户当前的外观模式呢?

下面是我正在使用的代码片段:

代码语言:javascript
复制
if #available(iOS 13.0, *) {
            guard(traitCollection.responds(to: #selector(getter: UITraitCollection.userInterfaceStyle)))
                else { return }

            let style = traitCollection.userInterfaceStyle

            switch style {
            case .light:
                print("light")
            case .dark:
                print("dark")
            case .unspecified:
                print("unspecified")
            @unknown default:
                print("unspecified")
            }

        }

但它总是返回未指定的或轻量级的。

EN

回答 1

Stack Overflow用户

发布于 2019-10-14 19:22:24

可以使用此属性检查当前样式是否为暗模式:

代码语言:javascript
复制
if #available(iOS 13.0, *) {
    if UITraitCollection.current.userInterfaceStyle == .dark {
        print("Dark mode")
    }
    else {
        print("Light mode")
    }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58375554

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档