根据red,green,blue三原色的不同数值组合,可以得到不同颜色。将百分比作为参数,控制某两种颜色的值,就可以得到两种颜色的渐进色。
以获得由绿到蓝的渐进色为例:
- (UIColor*)getColorByPercent:(double)percent { NSInteger r = 0; NSInteger g = 0; NSInteger one = 255 + 255; if ( percent < 0.5 ) { // 比例小于50的时候红色是越来越多的,直到红色为255时(红+绿)变为黄色. r = one * percent; g=255; } if ( percent >= 0.5 ) { // 比例大于50的时候绿色是越来越少的,直到0 变为纯红 g = 255 - ( (percent - 0.5 ) * one) ; r = 255; } return [UIColor colorWithRed:r/255.0 green:g/255.0 blue:0 alpha:1]; }
同理,可以得到由蓝到红,由黄到红等根据百分比获得渐进颜色的方法。
转载请注明出处 灰烬里有颗心的博客 http://grayheart.iteye.com 。