我正在设置我的标签的背景颜色,但我希望颜色是黑白的UIColor而不是原始的UIColor。
self.MyLabel.backgroundColor = self.selectedColors.color发布于 2020-07-15 06:53:29
看起来你需要把你的颜色转换成灰度。
虽然你可以通过平均颜色的R,G和B分量来做到这一点,但apple实际上提供了一个很好的method来获取灰度值:
func getWhite(_ white: UnsafeMutablePointer<CGFloat>?,
alpha: UnsafeMutablePointer<CGFloat>?) -> Bool因此,要使用它,首先要提取灰度颜色,然后初始化一个新的UIColor:
let originalColor = self.selectedColors.color
var white: CGFloat = 0
var alpha: CGFloat = 0
guard originalColor.getWhite(&white, alpha: &alpha) else {
// The color couldn't be converted! Handle this unexpected error
return
}
let newColor = UIColor(white: white, alpha: alpha)
self.MyLabel.backgroundColor = newColorhttps://stackoverflow.com/questions/62904955
复制相似问题