IOS图层Layer学习笔记(二)—— CALayer(上)

本文详细介绍了iOS中CALayer的基础属性,包括bounds、position、zPosition、anchorPoint等,探讨了图层的大小、位置、变换、隐藏、子图层管理、蒙版、内容显示等相关概念,为iOS动画和视图呈现提供理论基础。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

简介

CALayer是所有图层的基类。主要是一些基本显示属性(位置、锚点、颜色、透明度等)、层次关系(子图层和父图层)、基本动画等。

接下来分别从常用属性、类方法和实例方法来介绍CALayer的使用。顺序是按头文件的排序来。

常用属性

bounds

CGRect,Animatable。控制layer的大小,其中x和y无效果,默认是(0,0)。

position

CGPoint,Animatable。控制layer锚点在父图层的位置。

zPosition

CGFloat,Animatable。Z轴的坐标,默认是0。

anchorPoint

CGPoint,Animatable。锚点,默认是(0.5,0.5)。值只能在[0.0, 1.0]之间。
锚点是一个非常重要的属性,图层的变换基本都是基于锚点进行的。
下面两张图片分别描述了锚点的位置和图层变换作用。
锚点位置
锚点变换

anchorPointZ

CGFloat,Animatable。Z轴锚点,很少用到。

transform

CATransform3D,Animatable。3D变换属性,通过改值可以实现图层的移动、缩放、旋转等效果。
具体可以查找CATransform3D相关的资料。

frame

CGRect,Animatable。该属性是一个计算属性,表示位置和大小,位置坐标是自身左上角在父图层的坐标。

hidden(isHidden)

BOOL,Animatable。是否隐藏,默认NO。

doubleSided(isDoubleSided)

BOOL,Animatable。图层有双面,是否都显示,设置NO意思背面看不到。下图是两个图层分别设置doubleSided为NO和YES翻转180°的效果。默认值为YES。
doubleSided

geometryFlipped(isGeometryFlipped)

BOOL,No Animatable。表示坐标系是否翻转,默认NO。设置YES效果图如下:
geometryFlipped

superlayer

CALayer*, No Animatable。父图层。

sublayers

NSArray < CALayer* >*, No Animatable。子图层。

sublayerTransform

CATransform3D, Animatable。子图层统一变换。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值