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;
说明:
(0,0)到(1,0)和(0,1)到(1,1)都是水平从左向右渐变;
(0,0)到(1,1)是从左上角向右下角渐变;
(0,1)到(1,0)室从左下角向右上角渐变。
主要代码:
两种颜色渐变:
效果图:
改变CAGradientLayer的endPoint
//结束点end
gradientLayer.endPoint = CGPointMake(0, 1);
效果图:
三种颜色
效果图:
说明:
gradientLayer.locations = @[@(0.2),@(0.5),@(0.7)];
这句注释掉,让我看看效果图
结语:
写代码难免出错,有不对的地方,欢迎指正,一起学习
座标系统图摘自作者Bear