2013-02-08 96 views
0

我正在开发轮盘应用程序。其中,如果我点击中心按钮轮应旋转几秒钟,然后其速度应逐渐减慢。如果有人知道,请以正确的方式引导我。如何逐渐减慢旋转动画

我能够以一定的速度旋转imageView,但我正在努力逐渐减慢车轮的速度。

轮换代码

CALayer *layer = container.layer; 
CAKeyframeAnimation *animation; 
animation = [CAKeyframeAnimation animationWithKeyPath:@"transform.rotation.z"]; 
animation.duration = 1.5f; 
animation.cumulative = YES; 
animation.repeatCount = 1; 
animation.values = [NSArray arrayWithObjects:  // i.e., Rotation values for the 3 keyframes, in RADIANS 
        [NSNumber numberWithFloat:0.0 * M_PI], 
        [NSNumber numberWithFloat:0.75 * M_PI], 
        [NSNumber numberWithFloat:1.5 * M_PI], nil]; 
animation.keyTimes = [NSArray arrayWithObjects:  // Relative timing values for the 3 keyframes 
         [NSNumber numberWithFloat:0], 
         [NSNumber numberWithFloat:.5], 
         [NSNumber numberWithFloat:1.0], nil]; 
animation.timingFunctions = [NSArray arrayWithObjects: 
          [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseIn], // from keyframe 1 to keyframe 2 
          [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut], nil]; // from keyframe 2 to keyframe 3 
animation.removedOnCompletion = NO; 
animation.fillMode = kCAFillModeForwards; 
[layer addAnimation:animation forKey:nil]; 

回答