在使用10.14作为macOS部署目标的项目中,尝试以下代码:
let colour = NSColor.controlAccentColor
var red: CGFloat = 0, green: CGFloat = 0, blue: CGFloat = 0, alpha: CGFloat = 0
colour.getRed(&red, green: &green, blue: &blue, alpha: &alpha)
print("RGBA = (\(red), \(green), \(blue), \(alpha))")对getRed的调用冻结,print永远不会获得控制权。
发布于 2019-06-08 09:51:30
需要转换为RGB颜色空间:
let colour = NSColor.controlAccentColor
var red: CGFloat = 0, green: CGFloat = 0, blue: CGFloat = 0, alpha: CGFloat = 0
colour.usingColorSpace(.sRGB)!.getRed(&red, green: &green, blue: &blue, alpha: &alpha)
print("RGBA = (\(red), \(green), \(blue), \(alpha))") // Works OKhttps://stackoverflow.com/questions/56502522
复制相似问题