2012-07-12 21 views
3

我在我的应用程序上创建了一些动画,下面的代码将缩小对象直到它消失。我无法弄清楚如何让对象消失并保持这种方式,即。如何在动画完成后保持动画。任何陷阱?干杯!如何使缩放与CABasicAnimation保持一致

 CABasicAnimation* zoomOut = [CABasicAnimation animationWithKeyPath:@"transform.scale"]; 
     zoomOut.duration = 1; 
     zoomOut.toValue = [NSNumber numberWithFloat:0]; 
     [draggedObject addAnimation:zoomOut forKey:nil]; 
+0

您可以添加一些关于动画完成后对象发生的更多细节吗? – nicktones 2012-07-12 10:45:32

+0

对不起。物体动画(1秒),它缩小到无限(它消失),但在1秒后物体的大小恢复到其原始大小。 – Pupillam 2012-07-12 10:49:38

回答

3

好的,所以这是因为动画并没有真正改变基础属性,这就是为什么它在动画完成后跳回。

尝试在开始动画的行之前添加此行 - zoomOut.removedOnCompletion = NO;

+1

谢谢尼克。它需要zoomOut.fillMode = kCAFillModeForwards;也是 – Pupillam 2012-07-12 11:03:25

+0

它确实是对不起,错过了那一行。那么你的代码现在工作吗? – nicktones 2012-07-12 11:06:38

+0

是的,它现在工作正常。非常感谢! – Pupillam 2012-07-12 11:32:19

5

我找到了。它还需要以下两种方法:

 zoomOut.removedOnCompletion = NO; 
     zoomOut.fillMode = kCAFillModeForwards; 
相关问题