美文网首页
CAGradientLayer实现渐变颜色

CAGradientLayer实现渐变颜色

作者: HAPPY小元宝 | 来源:发表于2016-08-09 14:23 被阅读45次

CAGradientLayer是用来生成两种或更多颜色平滑渐变的。用Core Graphics复制一个CAGradientLayer并将内容绘制到一个普通图层的寄宿图也是有可能的,但是CAGradientLayer的真正好处在于绘制使用了硬件加速。

基础渐变
这些渐变色彩放在一个数组中,并赋给colors属性。这个数组成员接受CGColorRef类型的值(并不是从NSObject派生而来),所以我们要用通过bridge转换以确保编译正常。

CAGradientLayer也有startPoint和endPoint属性,他们决定了渐变的方向。这两个参数是以单位坐标系进行的定义,所以左上角坐标是{0, 0},右下角坐标是{1, 1},如下代码:

- (void)viewDidLoad {
    [super viewDidLoad];
    
    UIView *colorView = [[UIView alloc] initWithFrame:CGRectMake(100, 100, 100, 100)];
    [self.view addSubview:colorView];
    
    CAGradientLayer *gradientLayer = [CAGradientLayer layer];
    gradientLayer.frame = colorView.bounds;
    [colorView.layer addSublayer:gradientLayer];
    
    // set gradient colors
    gradientLayer.colors = @[(__bridge id)[UIColor redColor].CGColor, (__bridge id)[UIColor blueColor].CGColor];
    
    // set gradient start and end points
    gradientLayer.startPoint = CGPointMake(0, 0);
    gradientLayer.endPoint = CGPointMake(0.5, 0.5);

}

显示结果:


屏幕快照 2016-08-09 下午2.22.03.png

注意: colors接收的是CGColorRef类型的值,此处不转换也不会报错。

原文出处: 钟声. “ios核心动画高级技巧”。

相关文章

  • iOS 基于CALayer实现颜色渐变

    此工具是基于CALayer的子类CAGradientLayer实现 水平颜色渐变 或 垂直颜色渐变实现方法简单易懂...

  • iOS 绘制渐变·实例篇

    级别: ★★☆☆☆标签:「iOS颜色渐变」「CAGradientLayer渐变」「CAGradientLayer」...

  • iOS 绘制渐变·基础篇

    级别: ★★☆☆☆标签:「iOS颜色渐变」「CAGradientLayer渐变」「CAGradientLayer」...

  • CAGradientLayer 实现颜色渐变

    iOS颜色渐变层: 代码: 效果: CAGradientLayer 属性 1、iOS中Layer的坐标系统: 颜色...

  • CAGradientLayer实现渐变颜色

    CAGradientLayer是用来生成两种或更多颜色平滑渐变的。用Core Graphics复制一个CAGrad...

  • CALayer

    CAGradientLayer 渐变色遮罩 CAGradientLayer用来绘制渐变色,指定几个颜色值、渐变结束...

  • CAGradientLayer的使用

    CAGradientLayer是CALayer的子类,它经常用来实现颜色渐变,可以翻译为:渐变图层;gradien...

  • iOS渐变的文字

    CAGradientLayer CAGradientLayer可以方便的处理颜色渐变。@property(null...

  • swift4.0 颜色渐变

    //颜色渐变 functurquoiseColor() ->CAGradientLayer{ lett...

  • CAGradientLayer颜色渐变

    CAGradientLayer制作颜色渐变效果,常于CAShapeLayer结合使用。CAShapeLayer...

网友评论

      本文标题:CAGradientLayer实现渐变颜色

      本文链接:https://www.haomeiwen.com/subject/hykdsttx.html