iOS暗黑(dark)模式适配

在iOS开发中,有些APP需要适配暗黑模式,下面介绍下暗黑模式需要开发者手动管理的任务。其他系统自动管理的任务不再说明

  1. 不需要适配暗黑模式的话去info里面关闭即可
    iOS暗黑(dark)模式适配_第1张图片

  2. Assets中的图片要选择一下支持暗黑模式,会有两种状态的图片,浅色深色各一套,系统会自动的更改
    iOS暗黑(dark)模式适配_第2张图片

  3. 颜色设置的话,UIColor新增了深色浅色方法,要注意深色只有在iOS13以上系统才生效

class func setColor(_ light: UIColor, _ drak: UIColor) -> UIColor {
        var color: UIColor = light
        if #available(iOS 13.0, *) {
            let systemColor: UIColor = UIColor { UITraitCollection in
                if UITraitCollection.userInterfaceStyle == .dark {
                    return drak
                }
                return light
            }
            color = systemColor
        }
        return color
    }
  1. 需要监听系统暗黑模式切换的,看如下代理
override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
        if #available(iOS 13.0, *) {
            if UITraitCollection.current.userInterfaceStyle == .dark {
                
            }
        } else {
            // Fallback on earlier versions
        }
    }

你可能感兴趣的:(swift,iOS底层,iOS开发,ios)