我们如何获取未选择的UITabBarItem图像的默认颜色?
搜索所有搜索结果只返回要更改的方法,而我想要的只是才能获得颜色。
有什么想法吗?
答案 0 :(得分:0)
据我记得(我在一年前看过类似的东西)没有系统API可以获得非活动控件的“暗淡”颜色。然而,我对调光进行了逆向工程,看起来相似。
public extension UIColor {
public func dimmedColor() -> UIColor {
var hue = CGFloat(0)
var brightness = CGFloat(0)
var saturation = CGFloat(0)
var alpha = CGFloat(0)
self.getHue(&hue, saturation: &saturation, brightness: &brightness, alpha: &alpha)
brightness = max(0.0, brightness - 0.3)
return UIColor(hue: hue, saturation: 0, brightness: brightness, alpha: alpha)
}
}
从本质上讲,调光会使色彩去饱和并降低亮度。这可能会导致黑色,但可能不是您想要的颜色。
你可以按如下方式使用它,其中tintColor
是从UIView或按钮或其他一些有色元素中获得的:
let dimmedColor = tintColor.dimmedColor()