我开发了一个色轮,它使用响应于平移手势识别器的圆形渐变,并添加了一个控制颜色的 alpha 值的 slider ,以及打印出 R、G 和 B 值的文本字段。
我现在需要实现一个控制颜色亮度的 slider ,但我无法使用以下代码进行工作:
- (void)changeBrightness:(id)sender {
hellSlider = (UISlider *)sender;
float red = r;
float green = g;
float blue = b;
float alp = alphaSlider.value;
UIColor *color2 = [UIColor colorWithRed:red green:green blue:blue alpha: alp];
colorView.backgroundColor = color2;
}
事实上,我还不知道如何解决这个问题。因为似乎没有我可以访问的亮度属性,而我不知道如何将颜色转换为 HSV 值。
感谢任何帮助
最佳答案
您应该处理 HSB 颜色方法:
+ (UIColor *)colorWithHue:(CGFloat)hue saturation:(CGFloat)saturation brightness:(CGFloat)brightness alpha:(CGFloat)alpha
并在此处查看颜色样式之间的转换:Change from RGB to HSB on iPhone?
关于ios - slider 改变 UIColor 的亮度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17564762/