径向渐变

2017-03-05  本文已影响14人  Darren_xu
    CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
    // 2.颜色空间,如果使用了RGB颜色空间则4个数字一组表示一个颜色,下面的数组表示4个颜色
    //    CGFloat colors[] = {1,1,1,0.6, 0,0,1,1};//, 0,1,0,1, 0,0,1,1};
    
    CGFloat colorsBg[8] =
    {
        255/255.0, 241/255.0, 208/255.0, 1.0,
        //        157/255.0, 138/255.0 ,186/255.0, 1.0
        0/255.0, 0/255.0 ,0/255.0, 1.0
    };
    
    
    CGFloat lineW = rect.size.width * .5;
    
    
    // 3.locations代表4个颜色的分布区域(0~1),如果需要均匀分布只需要传入NULL
    //    CGFloat locations[]={0.525,0.575};//,0.625,0.875};
    CGFloat locations[] = {0,1};
    // 4. 创建CGGradient对象
    CGGradientRef gradient = CGGradientCreateWithColorComponents(colorSpace, colorsBg, locations, 2);
    // 5. 绘制
    CGContextDrawRadialGradient (ctx, gradient, CGPointMake(lineW, lineW),
                                 0, CGPointMake(lineW, lineW), 60,
                                 kCGGradientDrawsAfterEndLocation);
    // 6. 需要释放对象
    CGColorSpaceRelease(colorSpace);
    CGGradientRelease(gradient);

上一篇下一篇

猜你喜欢

热点阅读