CAAnimationGroup 动画组的应用
1 CABasicAnimation* rotationAnimation = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"];
2 rotationAnimation.toValue = [NSNumber numberWithFloat:(2 * M_PI) * 3];
3 rotationAnimation.duration = 1.9f;
4 rotationAnimation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
5
6 CABasicAnimation *scaleAnimation = [CABasicAnimation animationWithKeyPath:@"transform.scale"];
7 scaleAnimation.fromValue = [NSNumber numberWithFloat:0.0];
8 scaleAnimation.toValue = [NSNumber numberWithFloat:1.0];
9 scaleAnimation.duration = 2.0f;
10 scaleAnimation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
11
12 CAAnimationGroup *animationGroup = [CAAnimationGroup animation];
13 animationGroup.duration = 2.0f;
14 animationGroup.autoreverses = YES;
15 animationGroup.repeatCount = HUGE_VALF;
16 [animationGroup setAnimations:[NSArray arrayWithObjects:rotationAnimation, scaleAnimation, nil]];
17
18 [logoLayer addAnimation:animationGroup forKey:@"animationGroup"];
1 [anim1 setBeginTime:0.0f]; // 设定第一个动画的开始时间
2 [anim2 setBeginTime:2.0f]; // 设定第二个动画的开始时间
这样可以按顺序显示动画效果