iOS快速适配Dark模式

根据颜色使用场景不同,定义不同的枚举值,然后区分dark模式还是light模式,返回不同的颜色值

import UIKit
extension UIColor {
    enum CustomColor {
        // simple text: black or white
        case text
        // simple background only: black or white
        case bg
        // add more cases
    }

    static func selectColor(_ color: CustomColor) -> UIColor {
        if #available(iOS 13.0, *) {
            let currentMode = UITraitCollection.current.userInterfaceStyle
            if currentMode == .dark {
                switch color {
                case .text:
                    return UIColor.white
                case .bg:
                    return UIColor.black
                }
            } else {
                switch color {
                case .text:
                    return UIColor.black
                case .bg:
                    return UIColor.white
                }
            }
        } else {
            switch color {
            case .text:
                return UIColor.black
            case .bg:
                return UIColor.white
            }
        }
    }
}

你可能感兴趣的:(iOS快速适配Dark模式)