我正在實現遊戲應用程序。我在其中使用動畫層。如何在動畫期間找到CAlayer的位置?
CGMutablePathRef path = CGPathCreateMutable();
CGPathMoveToPoint(path, NULL, previousValuex, previousValue);
CGPathAddLineToPoint(path, NULL, valuex, value);
previousValue=value;
previousValuex=valuex;
CAKeyframeAnimation *animation;
animation = [CAKeyframeAnimation animationWithKeyPath:@"position"];
animation.path = path;
animation.duration =1.0;
animation.repeatCount = 0;
//animation.rotationMode = kCAAnimationRotateAutoReverse;
animation.calculationMode = kCAAnimationPaced;
// Create a new layer for the animation to run in.
CALayer *moveLayer = [imgObject layer];
[moveLayer addAnimation:animation forKey:@"position"];
現在我想在動畫過程中找到圖層的位置嗎?是否可能?請幫助我。
實際上,在這種情況下這不起作用。雖然您可以觀察圖層的屬性,但它們只反映圖層的開始或結束值,而不是其中的任何值。正如我在我的回答中所闡明的那樣,在動畫時,您需要查看presentationLayer獲取圖層的當前值。 – 2009-12-19 18:34:22
啊,我明白了(正如我指出的,我從來沒有嘗試過我的建議!)。對於它的價值,我已經投票選出了你的答案。如果我需要在將來做類似的事情,很高興知道。 – 2009-12-20 04:12:40