CALayer的基本使用

CALayer需要导入这个框架:#import <QuartzCore/QuartzCore.h>
一、CALayer常用属性
属性说明是否支持隐式动画
anchorPoint和中心点position重合的一个点,称为“锚点”,锚点的描述是相对于x、y位置比例而言的默认在图像中心点(0.5,0.5)的位置
backgroundColor图层背景颜色
borderColor边框颜色
borderWidth边框宽度
bounds图层大小
contents图层显示内容,例如可以将图片作为图层内容显示
contentsRect图层显示内容的大小和位置
cornerRadius圆角半径
doubleSided图层背面是否显示,默认为YES
frame图层大小和位置,不支持隐式动画,所以CALayer中很少使用frame,通常使用bounds和position代替
hidden是否隐藏
mask图层蒙版
maskToBounds子图层是否剪切图层边界,默认为NO
opacity透明度 ,类似于UIView的alpha
position图层中心点位置,类似于UIView的center
shadowColor阴影颜色
shadowOffset阴影偏移量
shadowOpacity阴影透明度,注意默认为0,如果设置阴影必须设置此属性
shadowPath阴影的形状
shadowRadius阴影模糊半径
sublayers子图层
sublayerTransform子图层形变
transform图层形变

CALayer注意点

 
  • 隐式属性动画的本质是这些属性发生变动是,默认隐含了CABasicAnimation动画实现,所以看起来是有动画效果的,默认0.25秒
  • 在CALayer中很少使用frame属性,因为frame本身不支持动画效果,通常使用bounds和position代替。
  • CALayer中透明度使用opacity表示而不是alpha;中心点使用position表示而不是center。
  • anchorPoint属性是图层的锚点,范围在(0~1,0~1)表示在x、y轴的比例,这个点永远可以同position(中心点)重合,当图层中心点固定后,调整anchorPoint即可达到调整图层显示位置的作用(因为它永远和position重合)
 

二、 CALayer的基本使用

2.1、赋值方式
self.iconView.layer.transform = CATransform3DMakeScale(1.5, 0.5, 0)      
self.iconView.layer.transform = CATransform3DMakeRotation(M_PI_4, 0, 0, 1)    //3D旋转
 self.iconView.layer.shadowOpacity = 0.5;           设置阴影透明度
 self.iconView.layer.shadowColor = [UIColor blueColor].CGColor;    设置阴影颜色
 self.iconView.layer.shadowOffset = CGSizeMake(20, 20);   设置阴影偏差
 
2.2、KVC方式
[self.iconView.layer setValue:@(-100) forKeyPath:@"transform.translation.x"];   //具体可以传递哪些参数,可以参看官方文档
 

转载于:https://www.cnblogs.com/hepingqingfeng/p/5445799.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值