2013-07-21 86 views
0

好吧,我就再說一遍:我動畫的路徑值填充而不是撫摸CAShapeLayer,我想使它動畫更加順暢

我動畫填充的路徑值,但沒有撫摸CAShapeLayer,我想讓它動畫更流暢。 這裏是基本的動畫代碼:

CABasicAnimation * pathAnimation = [CABasicAnimation animationWithKeyPath:@"path"]; 
     pathAnimation.toValue = (id)targetPath.CGPath; 
     pathAnimation.fromValue = (id)shapePath.CGPath; 
     //pathAnimation.fromValue = (id)((CAShapeLayer*)[currentShapeLayers objectForKey:key]).path; 
     pathAnimation.repeatCount = 0; 
     pathAnimation.duration = animationTime; 
     pathAnimation.autoreverses = NO; 
     [[currentShapeLayers objectForKey:key] addAnimation:pathAnimation forKey:@"animatePath"]; 

嗯,它的工作原理沒有問題。但路徑形狀奇怪,動態形成。我試圖確保路徑之間的點數總是相同的,這種幫助。但我仍然看到部分路徑動畫,我不想動畫。真的是我想要做的就是保持路徑靜態的部分,而其餘路徑出自於一側或縮小回它,或者在某些情況下,從主路徑分離成單獨的子路徑。

我已考慮過找中介路徑階段,動畫這些第一,然後從那裏完成動畫,但我覺得有可能是另一種解決方案。

回答

0

我發現a solution to this。我不知道這是否是最有效的解決方案,因爲它涉及了很多重新劃分的,但它允許在動畫的行爲大量的控制。