Extensions.swift 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. //
  2. // Extensions.swift
  3. // ThemeDemo
  4. //
  5. // Created by 邓永豪 on 2017/8/24.
  6. // Copyright © 2017年 dengyonghao. All rights reserved.
  7. //
  8. import UIKit
  9. extension UIImage {
  10. static func loadImage(_ imageName: String) -> UIImage? {
  11. return ThemeManager.instance.loadImage(imageName)
  12. }
  13. // 如果明确资源不受 theme 变化而变化,使用这个接口会更快
  14. static func loadDefaultImage(_ imageName: String) -> UIImage? {
  15. return ThemeManager.instance.loadImage(imageName, .default)
  16. }
  17. }
  18. extension UIColor {
  19. convenience init(red: Int, green: Int, blue: Int) {
  20. assert(red >= 0 && red <= 255, "Invalid red component")
  21. assert(green >= 0 && green <= 255, "Invalid green component")
  22. assert(blue >= 0 && blue <= 255, "Invalid blue component")
  23. self.init(red: CGFloat(red) / 255.0, green: CGFloat(green) / 255.0, blue: CGFloat(blue) / 255.0, alpha: 1.0)
  24. }
  25. convenience init(_ colorName: String) {
  26. let netHex = ThemeManager.instance.themeColor(colorName)
  27. self.init(red:(netHex >> 16) & 0xff, green:(netHex >> 8) & 0xff, blue:netHex & 0xff)
  28. }
  29. }