动画组CAAnimationGroup的简单案例

#import "ViewController.h"

@interface ViewController ()
@property (weak, nonatomic) IBOutlet UIView *blueView;

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}


- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
    //缩放动画
    CABasicAnimation *scaleAn = [CABasicAnimation animation];
    scaleAn.keyPath = @"transform.scale";
    scaleAn.toValue = @0.5;
    
    //位置移动动画
    CABasicAnimation *positionAn = [CABasicAnimation animation];
    positionAn.keyPath = @"position";
    positionAn.toValue = [NSValue valueWithCGPoint:CGPointMake(50, 300)];
    
    
    //旋转动画
    CABasicAnimation *rotationAn = [CABasicAnimation animation];
    rotationAn.keyPath = @"transform.rotation";
    rotationAn.toValue = @(2*M_PI);//弧度

    //动画组
    CAAnimationGroup *groupAn = [CAAnimationGroup animation];
    groupAn.animations = @[scaleAn,positionAn,rotationAn];
    groupAn.duration = 2.0;
    groupAn.removedOnCompletion = NO;
    groupAn.fillMode = kCAFillModeForwards;
    
    [self.blueView.layer addAnimation:groupAn forKey:nil];
}

@end


你可能感兴趣的:(动画组CAAnimationGroup的简单案例)