如何在Swift,iOS中使用十六进制颜色值

前端之家收集整理的这篇文章主要介绍了如何在Swift,iOS中使用十六进制颜色值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图在Swift中使用十六进制颜色值,而不是几个标准的UIColor允许你使用,但我不知道如何做到。

例如:我如何使用#ffffff作为颜色?

#ffffff实际上是十六进制符号的三个颜色分量 – 红色ff,绿色ff和蓝色ff。您可以使用0x前缀(例如0xFF)在Swift中编写十六进制符号

为了简化转换,让我们创建一个接受整数(0 – 255)值的初始化器:

extension UIColor {
   convenience init(red: Int,green: Int,blue: Int) {
       assert(red >= 0 && red <= 255,"Invalid red component")
       assert(green >= 0 && green <= 255,"Invalid green component")
       assert(blue >= 0 && blue <= 255,"Invalid blue component")

       self.init(red: CGFloat(red) / 255.0,green: CGFloat(green) / 255.0,blue: CGFloat(blue) / 255.0,alpha: 1.0)
   }

   convenience init(netHex:Int) {
       self.init(red:(netHex >> 16) & 0xff,green:(netHex >> 8) & 0xff,blue:netHex & 0xff)
   }
}

用法

var color = UIColor(red: 0xFF,green: 0xFF,blue: 0xFF)
var color2 = UIColor(netHex:0xFFFFFF)

猜你在找的Swift相关文章