使用带有CGPathAddArcToPoint的Path构建的CAKeyframeAnimation不起作用

时间:2012-12-04 12:09:10

标签: ios core-animation calayer caanimation cakeyframeanimation

我有一个keyframeAnimation,我定义了一个Path,但动画不起作用。

你知道有什么不对吗? :S

以下是代码:

CAKeyframeAnimation *animKF = [CAKeyframeAnimation animationWithKeyPath:@"position"];

CGMutablePathRef animationPath = CGPathCreateMutable();

CGPathMoveToPoint(animationPath, NULL, 300, 100);

CGPathAddArcToPoint(animationPath, NULL, 300, 100, 800, 500, 500);

animKF.path = animationPath;

animKF.duration = 3;

animKF.rotationMode =  kCAAnimationRotateAuto;

[imageView.layer addAnimation:animKF forKey:@"keyframe"];

非常感谢

1 个答案:

答案 0 :(得分:0)

您可能认为CGPathMoveToPoint()是实际“移动”这一点的方法,对不起,情况并非如此。我猜你的意图是动画“路径”属性。因此,您应该创建几个(在您的情况下,3个)CGMutablePathRef个对象keyframe。然后拨打

[animKF setValues: @[path1,path2,path3]];