关键帧动画实现圆弧动画

   
    /*
     CAKeyframeAnimation *pathAnimation = [CAKeyframeAnimation
     animationWithKeyPath:@"position"];
     pathAnimation.calculationMode = kCAAnimationPaced;
     pathAnimation.fillMode = kCAFillModeForwards;
     pathAnimation.removedOnCompletion = NO;
     pathAnimation.duration = 15.0;
     pathAnimation.repeatCount = 1;
     CGMutablePathRef curvedPath = CGPathCreateMutable();
     CGPathMoveToPoint(curvedPath, NULL, x+15, y);
     CGPathAddQuadCurveToPoint(curvedPath, NULL, 20, 10, 100, 330);
     pathAnimation.path = curvedPath;
     CGPathRelease(curvedPath);
     Yourimage.center=CGPointMake(x, y);
     [Yourimage.layer addAnimation:pathAnimation forKey:@"moveTheSquare"];
     
     */
    
    
    
    UIView *aView = [[UIView alloc]initWithFrame:CGRectMake(150, 50, 20, 20)];
    
  
    aView.backgroundColor = [UIColor greenColor];
    CAKeyframeAnimation *pathAnimation = [CAKeyframeAnimation
                                          animationWithKeyPath:@"position"];
    pathAnimation.calculationMode = kCAAnimationPaced;
    pathAnimation.fillMode = kCAFillModeForwards;
    pathAnimation.removedOnCompletion = NO;
    pathAnimation.duration = 0.5;
    pathAnimation.repeatCount = 20;
    CGMutablePathRef curvedPath = CGPathCreateMutable();
    CGPathAddArc(curvedPath, NULL, 160, 240, 100, 0,2*M_PI , 0);
    pathAnimation.path = curvedPath;
    CGPathRelease(curvedPath);
    [aView.layer addAnimation:pathAnimation forKey:@"moveTheCircleOne"];
    
    [self.view addSubview:aView];

  

原文地址:https://www.cnblogs.com/cocoajin/p/3219706.html