(原创)iOS 根据百分比获得渐进色 由绿到红

阅读更多

根据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 。

你可能感兴趣的:(iOS,Objective-C,渐进色,百分比)