创建一个多种颜色的圆圈

Mau*_*aul 3 iphone uiview ios

我正在开发一个iPhone应用程序,我想创建一个多种颜色的圆圈.如下图所示

在此输入图像描述

使用draw rect方法绘制一个圆但没有运气的多分数.

你能帮我么?

提前致谢.

Vla*_*mir 5

您可以使用带圆形蒙版的CAGradientLayer来实现此效果.示例代码(假设您在某个视图控制器中使用它):

- (void)viewDidLoad
{
    [super viewDidLoad];

    CAGradientLayer *glayer = [CAGradientLayer layer];
    glayer.frame = CGRectMake(60.0f, 60.0f, 200.0f, 200.0f);
    glayer.colors = @[(__bridge id)[UIColor greenColor].CGColor,
                      (__bridge id)[UIColor cyanColor].CGColor,
                      (__bridge id)[UIColor blueColor].CGColor,
                      (__bridge id)[UIColor purpleColor].CGColor,
                      (__bridge id)[UIColor redColor].CGColor,
                      (__bridge id)[UIColor orangeColor].CGColor,
                      (__bridge id)[UIColor yellowColor].CGColor];
    glayer.backgroundColor = [UIColor redColor].CGColor;
    CAShapeLayer *shLayer = [CAShapeLayer layer];
    [shLayer setPath:CGPathCreateWithEllipseInRect(CGRectMake(0, 0, 200, 200), NULL)];
    [glayer setMask:shLayer];
    [self.view.layer addSublayer: glayer];
}
Run Code Online (Sandbox Code Playgroud)

需要注意的是colorslocationsCAGradientLayer的性质是动画,这样你就可以使用这种方法轻松地添加动画效果