Core Animation 非常强大的动画API ,使用它可以做出非常酷炫的动画效果
Core Animation可以用在OS X 和IOS操作系统
Core Animtaion 的动画执行都是在后台执行的。不会阻塞主线程。
CAAnimation 与 CAPropertyAnimation为抽象类
CABasicAnimation为基本动画。 CAKeyframeAnimation 可以存在许多帧
CABasicAnimation 基础动画
CABasicAnimation*animation=[CABasicAnimation animation];
animation.keyPath=@"position";
animation.toValue=[NSValue valueWithCGPoint:CGPointMake(200,400)];
//动画完成的时候移除动画
animation.removedOnCompletion=NO;
//填充模式是始终是最新的
animation.fillMode=kCAFillModeForwards;
[self.redVie.layer addAnimation:animation forKey:nil];
改变其他的属性
// 创建动画
CABasicAnimation *anim = [CABasicAnimation animation];
// 描述下修改哪个属性产生动画
// anim.keyPath = @"position";
// 只能是layer属性
anim.keyPath = @"transform.scale";
// 设置值
// anim.toValue = [NSValue valueWithCGPoint:CGPointMake(250, 500)];
anim.toValue = @0.5;
// 设置动画执行次数
anim.repeatCount = MAXFLOAT;
// 取消动画反弹
// 设置动画完成的时候不要移除动画
anim.removedOnCompletion = NO;
// 设置动画执行完成要保持最新的效果
anim.fillMode = kCAFillModeForwards;
[_imageV.layer addAnimation:anim forKey:nil];