首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >颜色作为设置颜色的滑块位置的函数

颜色作为设置颜色的滑块位置的函数
EN

Stack Overflow用户
提问于 2015-11-27 09:34:39
回答 3查看 1.8K关注 0票数 1

我试图创建一个颜色选择工具,用户可以使用。颜色选择器有一个所有颜色的滑块和额外的滑块来设置颜色有多深。两者均如图1和2所示:

图像1:选择颜色:

图像2:设置暗颜色

我知道我可以用一个自定义的图像作为滑块,而不是将每种颜色与一个位置相匹配,这意味着我需要创建巨大的数组,这需要大量的工作。设置暗颜色的第二个滑块仍然需要在运行时进行计算。我怀疑这种方法是否有用,因此问你是否对如何解决这个问题有更好的想法。也许一个将颜色和滑块位置联系起来的数学函数,颜色(X),其中x是滑块的位置,就能做到这一点。那么,如何创建一个颜色作为一个函数的位置,并创建一个滑块基于这个数学函数?

EN

Stack Overflow用户

发布于 2015-11-27 11:24:19

你需要一个不少于三个滑块,它们可以是RGB或HSB滑块。然后可以直接从以下方法生成当前颜色:

为RGB

代码语言:javascript
运行
复制
[UIColor colorWithRed:slider1.value
                Green:slider2.value
                 Blue:slider3.value
                alpha:1.0];

为HSB

代码语言:javascript
运行
复制
[UIColor colorWithHue:slider1.value
           saturation:slider2.value
           brightness:slider3.value
                alpha:1.0];

对于动态设置滑块的背景梯度,可以通过改变其值来获得每一个滑块的梯度。

例如,如果H:0.2 S:0.6 B:0.5是当前的滑块位置,那么梯度将是-

Slider1 : H:__0.0 S:0.6 B:0.5 to H:__1.0 S:0.6 B:0.5

Slider2 : H:0.2 S:__0.0 B:0.5至H:0.2 S:__1.0 B:0.5

Slider3 : H:0.2 S:0.6 B:__0.0至H:0.2 S:0.6 B:__1.0

如果你想走简单的路,外面有很多图书馆。有关例如,请参见

票数 1
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33954319

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档