UIColor+Extensions

import UIKit

/**
 static var(计算属性):每次访问时计算,适合需要适配暗黑模式的情况下使用。
 例如:
 static var dynamicColor: UIColor {
     return isDarkMode ? UIColor(hex: 0x333333) : UIColor(hex: 0xFFFFFF)
 }
 
 static let(存储属性):懒加载,只在第一次访问时初始化,后续直接返回缓存的值。
 例如:
 static let love_bg_color: UIColor = {
     return UIColor(hex: 0xFF5733)
 }()
 */

extension UIColor {
    convenience init(r: CGFloat, g: CGFloat, b: CGFloat, a: CGFloat = 1.0) {
        self.init(red: r / 255.0, green: g / 255.0, blue: b / 255.0, alpha: a)
    }

    convenience init(hex: Int, alpha: CGFloat = 1.0) {
        let r = CGFloat((hex >> 16) & 0xFF) / 255.0
        let g = CGFloat((hex >> 8) & 0xFF) / 255.0
        let b = CGFloat(hex & 0xFF) / 255.0
        self.init(red: r, green: g, blue: b, alpha: alpha)
    }

    static let love_bg_color: UIColor = {
        return UIColor(hex: 0xFF5733)
    }()
}

发表评论