径向渐变

    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);

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容