我对实现类似于下图所示的 UIColor 光谱很感兴趣。根据用户触摸刻度的位置,我希望用户能够使用通过触摸选择的颜色绘制线条。
我在开始实现这个概念时遇到了困难。由于RGB颜色以R = 255,G = 0,B = 0
开始,但是根据两种颜色的值同时变化而变化,我不知道如何仅基于基于触摸的 y
坐标增量来对应这些更改。
我的问题是:
是否有任何我可以使用或部分获得指导的从色谱中进行基于触摸的颜色选择的开源示例?即使它们不在 Objective-C 中,了解 y 坐标变化如何对应于
RGB
值变化仍然非常有帮助。RGB 光谱中颜色发生变化的重要部分有哪些,因此如果我尝试自己实现光谱颜色选择,我将能够根据这些值开始?
谢谢!
最佳答案
我觉得你想太多了。您所要做的就是设置 slider 以提供 0.0 到 1.0 之间的值,而不是使用 RGB 创建颜色,而是使用 +[UIColor colorWithHue:saturation:brightness:alpha:]
。您所要做的就是将 slider 值传递给色调参数。
UIColor *color = [UIColor colorWithHue:mySlider.value saturation:1.0 brightness:1.0 alpha:1.0];
关于ios - 如何根据 RGB 光谱上的触摸设置 UIColors?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21105003/