CAGradientLayer与CAShapeLayer简介

CAGradientLayer

处理颜色的渐变

属性

属性意义
NSArray *colors渐变颜色的数组
NSArray *locations渐变颜色的区间分布,locations的数组长度和color一致,这个值一般不用管它,默认是nil,会平均分布,取值在0到1之间
startPoint映射locations中第一个位置,用单位向量表示,比如(0,0)表示从左上角开始变化。默认值是(0.5,0.0)
endPoint映射locations中最后一个位置,用单位向量表示,比如(1,1)表示到右下角变化结束。默认值是(0.5,1.0)
NSString *type默认值是kCAGradientLayerAxial,表示按像素均匀变化。除了默认值也无其它选项

CAShapeLayer

CAShapeLayer属于QuartzCore框架,继承自CALayer。CAShapeLayer是在坐标系内绘制贝塞尔曲线的,通过绘制贝塞尔曲线,设置shape(形状)的path(路径),从而绘制各种各样的图形以及不规则图形。因此,使用CAShapeLayer需要与UIBezierPath一起使用。
UIBezierPath类允许你在自定义的 View 中绘制和渲染由直线和曲线组成的路径.。你可以在初始化的时候直接为你的UIBezierPath指定一个几何图形。
通俗点就是UIBezierPath用来指定绘制图形路径,而CAShapeLayer就是根据路径来绘图的。

属性

属性意义
CGPathRef path;呈现的形状的路径,如果路径延伸到layer的bounds之外,它不会自动被剪辑到该层,只有当正常的图层隐藏规则时,才会显示。————注意:该属性可动画,但当属性更改时,不会创建隐式动画。
CGColorRef fillColor;填充路径的颜色,或不需要填充。默认颜色为不透明的黑色。——注意:在有UIBezierPath参数配置的情况下才能发生作用
NSString *fillRule;当在填充颜色的时候则就需要这种填充规则,值有两种,非零和奇偶数,但默认是非零值。
CGColorRef strokeColor;设置描边色,默认无色。——注意:在有UIBezierPath参数配置的情况下才能发生作用
CGFloat strokeStart; CGFloat strokeEnd;用于绘制边线轮廓路径的子区域。该值必须在[0,1]范围,0代表路径的开始,1代表路径的结束。在0和1之间的值沿路径长度进行线性插值。strokestart默认为0,strokeend默认为1。
CGFloat lineWidth;线的宽度,默认为1
CGFloat strokeStart; CGFloat strokeEnd;最大斜接长度。斜接长度指的是在两条线交汇处和外交之间的距离。只有lineJoin属性为kCALineJoinMiter时miterLimit才有效。边角的角度越小,斜接长度就会越大。为了避免斜接长度过长,我们可以使用miterLimit属性。如果斜接长度超过miterLimit的值,边角会以lineJoin的“bevel”即kCALineJoinBevel类型来显示。
NSString *lineCap;线端点类型,值有三个类型,分别为kCALineCapButt 、kCALineCapRound 、kCALineCapSquare,默认值为Butt
NSString *lineJoin;线连接类型,其值也有三个类型,分别为kCALineJoinMiter、kCALineJoinRound、kCALineJoinBevel,默认值是Miter
CGFloat lineDashPhase;线型模版的起始位置
NSArray *lineDashPattern;线性模版,这是一个NSNumber的数组,索引从1开始记,奇数位数值表示实线长度,偶数位数值表示空白长度。

参考 —— [ iOS 动画合集]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值