iOS CAGradientLayer颜色渐变

Gradient:本身就是梯度的意思,所以在这里就是作为渐变色来理解

  • CAGradientLayer用于处理渐变色的层结构
  • CAGradientLayer的渐变色可以做隐式动画
  • 大部分情况下,CAGradientLayer时和CAShapeLayer配合使用,CAShapeLayer这里就不介绍了

CAGradientLayer属性介绍:

  • colors:颜色分配,这里至少要有2种颜色
    //@property(nullable, copy) NSArray *colors;
  • locations:颜色分割线,颜色之间的界限
    //@property(nullable, copy) NSArray<NSNumber *> *locations;
  • startPoint:颜色起始点
    //@property CGPoint startPoint;
  • endPoint:颜色结束点
    //@property CGPoint endPoint;
    坐标系统.png

    说明:
    (0,0)到(1,0)和(0,1)到(1,1)都是水平从左向右渐变;
    (0,0)到(1,1)是从左上角向右下角渐变;
    (0,1)到(1,0)室从左下角向右上角渐变。
    主要代码:
    两种颜色渐变:
    图1.png

    效果图:
    图2.png

    改变CAGradientLayer的endPoint
    //结束点end
    gradientLayer.endPoint = CGPointMake(0, 1);
    效果图:
    图3.png

    三种颜色
    图4.png

    效果图:
    图5.png

    说明:
    gradientLayer.locations = @[@(0.2),@(0.5),@(0.7)];
    这句注释掉,让我看看效果图
    图6.png

    结语:
    写代码难免出错,有不对的地方,欢迎指正,一起学习
    座标系统图摘自作者Bear
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容