免费开源的iOS开发学习平台

CALayer介绍:3-动画属性

当我们修改CALayer类的一些属性时,可以展示属性变化的过程,从而显示出动画播放的效果,而这些属性我们称为动画属性。

动画属性

CALayer中的动画属性在开发过程中,我们比较常用的有如下几个。

@property CGRect bounds;
@property(nullable) CGColorRef backgroundColor;
@property CATransform3D transform;
@property(getter=isHidden) BOOL hidden;
@property CGFloat borderWidth;
@property(nullable) CGColorRef borderColor;
@property float opacity;

示例

当我们需要改变CALayer的动画属性时,可以调用如下方法,达到播放动画的效果。

+ (void)animateWithDuration:(NSTimeInterval)duration animations:(void (^)(void))animations completion:(void (^ __nullable)(BOOL finished))completion; 

例如:修改subLayer对象的形变属性,使其旋转,在旋转过程中可以播放旋转动画。

[UIView animateWithDuration:2.0 animations:^{
            subLayer.transform = CATransform3DMakeRotation(M_PI_4, 1, 1, 1);
        }];