1.什么是隐式动画
如标题所示,CATransaction就是iOS系统提供的隐式动画。它是在修改UI控件状态时的动画,它的时长为0.25秒,所以如果我们不注意,是无法感知到的。
2.修改隐式动画
//开始
[CATransaction begin];
//修改隐式动画时间
[CATransaction setAnimationDuration:2.0];
//这时候的修改颜色的动画的时间会变为2.0秒
self.layer.backgroundColor = [UIColor greenColor].CGColor;
//修改完成时执行动画
[CATransaction setCompletionBlock:^{
CGAffineTransform transform = self.layer.affineTransform;
//旋转
transform = CGAffineTransformRotate(transform, M_PI);
//缩放
transform = CGAffineTransformScale(transform, 0.5, 0.5);
//平移
transform = CGAffineTransformTranslate(transform, 100, 100);
self.layer.affineTransform = transform;
}];
//提交修改
[CATransaction commit];
begin
和commit
成对出现,在begin后才能修改,修改完后需要commit才能生效.
3.隐式动画高级用法
更新中...