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

Jav*_*eed 4 objective-c uicolor ios

是否有任何算法可以为给定的Hex或RGB值创建不同的阴影?我尝试过使用增加和减少的alpha值,但是对于浅色调它看起来并不好(例如:白色).

在此输入图像描述

Fog*_*ter 10

最好的方法是使用HSB色彩空间.

这是我在最新的应用程序中使用键盘左手部分的方式...

在此输入图像描述

颜色的"阴影"是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];
Run Code Online (Sandbox Code Playgroud)

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

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

使用for循环我能够轻松创建不同的部分颜色.

  • @GuillaumeAlgis编辑.嘿,我们都必须以某种方式得到消息:P现在编辑了. (3认同)