ios-从UISlider获取RGB颜色

问题描述

从UISlider获取RGB颜色

改变UISLider的值使用方法:

@property (strong, nonatomic) IBOutlet UISlider *r;
@property (strong, nonatomic) IBOutlet UISlider *g;
@property (strong, nonatomic) IBOutlet UISlider *b;
@property (strong, nonatomic) IBOutlet UILabel *colorLabel;

- (void)viewDidLoad
{
    [super viewDidLoad];

    _r.minimumValue=0;
    _r.maximumValue=255;

    _g.minimumValue=0;
    _g.maximumValue=255;

    _b.minimumValue=0;
    _b.maximumValue=255;

    // Do any additional setup after loading the view, typically from a nib.
}

-(void)sliderValueChanged:(UISlider*)slider
{
    [_colorLabel setBackgroundColor:[UIColor colorWithRed:_r.value green:_g.value blue:_b.value alpha:1]];
}

谢谢~

解决方案

设置颜色方法:

-(void)sliderValueChanged:(UISlider*)slider
{
    float r=[[NSString stringWithFormat:@"%.0f",_r.value] floatValue];
    float g=[[NSString stringWithFormat:@"%.0f",_g.value]floatValue];
    float b=[[NSString stringWithFormat:@"%.0f",_b.value]floatValue];

    UIColor *colorToSet=[UIColor colorWithRed:(r/255.0f) green:(g/255.0f) blue:(b/255.0f) alpha:1];
    [_colorLabel setBackgroundColor:colorToSet];
}

解决方案二:

你这个问题的关键在于:你在拿到UISlider的value后,使用[UIColor colorWithRed:green:blue:alpha:] 时并没有将得到各颜色的值除以255.0

UIColor *bgColor=[UIColor colorWithRed:_r.value/255.0f green:_g.value/255.0f blue:_b.value/255.0f alpha:1];
[_colorLabel setBackgroundColor:colorToSet];
时间: 2024-11-02 17:22:21

ios-从UISlider获取RGB颜色的相关文章

JavaScript实现把rgb颜色转换成16进制颜色的方法_javascript技巧

本文实例讲述了JavaScript实现把rgb颜色转换成16进制颜色的方法.分享给大家供大家参考.具体实现方法如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtm

javascript实现rgb颜色转换成16进制格式_javascript技巧

自己试过很好用 function zero_fill_hex(num, digits) { var s = num.toString(16); while (s.length < digits) s = "0" + s; return s; } function rgb2hex(rgb) { if (rgb.charAt(0) == '#') return rgb; var ds = rgb.split(/\D+/); var decimal = Number(ds[1]) *

CSS中对RGB颜色的使用详解

  RGB颜色模型解释 RGB颜色模型就是一种描述某个颜色里面有多少红.绿.蓝三原色的量的方法,就像把水彩颜料或油彩颜料混合起来得到某种我们想要的真实色彩一样. 想象下如果你要配出一个纯蓝色,为了实现这个,你就不能把红色和绿色放进这个颜色里.所以我们就把红.绿设置为0%,把绿设置为100%: CSS Code复制内容到剪贴板 rgb(0%, 0%, 100%) 结果: 但如果你想要的不是蓝色而是紫红色,那该怎么办呢?我们可以通过将100%的红和100%的蓝混合起来得到紫红色: CSS Code复

将CMYK颜色值和RGB颜色相互转换的PHP代码_php技巧

function hex2rgb($hex) { $color = str_replace('#','',$hex); $rgb = array('r' => hexdec(substr($color,0,2)), 'g' => hexdec(substr($color,2,2)), 'b' => hexdec(substr($color,4,2))); return $rgb; } // www.jb51.net function rgb2cmyk($var1,$g=0,$b=0) {

用API函数取色后,如何将其分成RGB颜色?

函数 用API函数取色后,如何将其分成RGB颜色?   问题: 用API函数取色后,是一个10进制的数值,如何将其分成RGB颜色?  方法一: 用 HEX 函数将数值转换为 16 进制,然后,每两个切分一下就可以得到 RGB 数值了Function C10ToRGB_1(lngColor As Long) As String    Dim strR As String    Dim strG As String    Dim strB As String    strR = lngColor M

ios开发-iOS app可以获取本地音频文件吗

问题描述 iOS app可以获取本地音频文件吗 自己的app没有录音功能.但是想读手机上的音频文件.可以不. 解决方案 PHP获取音频文件时长 解决方案二: 只能访问特定的目录 一般是不能访问

图像处理 matlab HSI RGB 颜色失真

问题描述 图像处理 matlab HSI RGB 颜色失真 用Matlab对RGB图像的三颜色通道R,G,B个自做一些运算后得到R1,G1,B1,然后运行I1=cat(3, R1,G1,B1); I2=uint8(I1)得到的图像颜色很正常,而我先将RGB转换到HIS,对H,S,I三通道各自进行一些运算后,得到新的H1,S1,I1,再运行I3=cat(3, H1,S1,I1); I4=uint8(I3),再转换到RGB,I5= hsi2rgb(I4),得到的图片颜色失真.效果如我上传的这张一样,

Processing编程学习指南1.4 RGB颜色

1.4 RGB颜色 前面几节的内容帮助你学习了像素坐标.图形尺寸等基础知识.现在是时候学习数位色彩的基础知识了.回想一下童年,还记得手指画吗?通过混合最基础的三种原色,我们可以得到任何颜色.如果将所有颜色混合在一起,会导致浑浊的棕色.而且你混合的颜料越多,就变得越暗. 数位色彩(digital color)同样是混合三种基础颜色来实现的,但其运行机制和绘画颜料有所不同.首先,数位色彩的色光三原色是不同的:红.绿和蓝(RGB三个字母所对应的red.green和blue).其次,数位色彩以光来合成颜

iOS的自己获取聊天室聊天记录该怎么做?

问题描述 iOS的自己获取聊天室聊天记录该怎么做?我这边自己的服务器从环信取到数据了,这样的话我在哪个方法里调用? 解决方案 我们客户端接口,加入聊天室,只能获取10条,你如果自己实现的话,你让你们的服务器去我们的服务器拉取聊天记录,然后自己客户端去你自己的服务器上获取