Objective-c:如何创建不同颜色的阴影

时间:2014-08-12 09:26:49

标签: ios objective-c uicolor

是否有任何算法会为给定的Hex或RGB值创建不同的阴影?我尝试过使用alpha增加&减少,但它的颜色不好看(例如:白色)。

enter image description here

1 个答案:

答案 0 :(得分:10)

执行此操作的最佳方法是使用HSB色彩空间。

我在最新的应用程序中如何操作键盘的左手部分......

enter image description here

"阴影"颜色是H值和S值。然后,您可以通过调整B值来更改亮度。

所以如果你有一种颜色......

HSB - 0.5, 0.9, 0.9 - 非常浅蓝色

您可以通过更改B值来创建更暗的阴影......

HSB - 0.5, 0.9, 0.3 - 深蓝色的相同色调。

创建HSB颜色,如......

UIColor *color = [UIColor colorWithHue:0.5 saturation:0.9 brightness:0.4 alpha:1.0];

在我的应用程序中,我有一个最亮的亮度"和最深的亮度"。

我通过将它们之间的差除以部分的数量来计算每个部分的亮度变化。

使用for循环,我可以轻松创建不同的部分颜色。