swift 如何从UIColor中读取 RGBA 数据
2020-11-27 本文已影响0人
刘乔泓
使用RGBA创建一个 UIColor 很容易:
let color = UIColor(red: 0.5, green: 0.2, blue: 0.8, alpha: 1)
.
但是把UIColor 转换为 RGBA则代码会多一些,使用UIColor中的getRed()方法,该方法是OC时代的产物,还用到一些指针:
var red: CGFloat = 0
var green: CGFloat = 0
var blue: CGFloat = 0
var alpha: CGFloat = 0
color.getRed(&red, green: &green, blue: &blue, alpha: &alpha)
.
可以使用extension扩展包起来,使用起来方便一些:
extension UIColor {
var rgba: (red: CGFloat, green: CGFloat, blue: CGFloat, alpha: CGFloat) {
var red: CGFloat = 0
var green: CGFloat = 0
var blue: CGFloat = 0
var alpha: CGFloat = 0
getRed(&red, green: &green, blue: &blue, alpha: &alpha)
return (red, green, blue, alpha)
}
}