Ios 获取UITabBarItem图像的默认未选择的TintColor
如何获取未选择的Uitabritem图像的默认颜色 到处搜索,所以只返回要更改的方法,而我想要的是只获取颜色 有什么想法吗 据我记忆所及(我大约在一年前研究过类似的东西),没有系统API可以使非活动控件的颜色变暗。不过,我对调光进行了反向工程,使其看起来相对类似Ios 获取UITabBarItem图像的默认未选择的TintColor,ios,swift,uitabbar,uitabbaritem,Ios,Swift,Uitabbar,Uitabbaritem,如何获取未选择的Uitabritem图像的默认颜色 到处搜索,所以只返回要更改的方法,而我想要的是只获取颜色 有什么想法吗 据我记忆所及(我大约在一年前研究过类似的东西),没有系统API可以使非活动控件的颜色变暗。不过,我对调光进行了反向工程,使其看起来相对类似 public extension UIColor { public func dimmedColor() -> UIColor { var hue = CGFloat(0) var brig
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()
答案确实很有趣,但它创建了一个比实际未选择颜色更亮的版本。嗯,我想我最终得到的亮度值与他们使用的不完全一样,你可以稍微调整一下,看看是否更接近。我尝试过使用不同的色调颜色,但这不会影响未选择的颜色。是#9292。我需要一种方法来确定系统颜色,预测苹果是否会像我说的那样改变默认颜色,根据我所知道的,现在有一种方法可以做到这一点。您可以尝试捕获颜色,例如创建控件,让系统将其调暗,在图像中捕获颜色,然后查看颜色值。