CAKeyframeAnimation и анимация спрайтов - PullRequest
1 голос
/ 15 июня 2011

У меня есть CAKeyframeAnimation свойства contentsRects листа спрайта, чтобы показать анимацию в CALayer.Все работает большую часть времени, но иногда я вижу неправильную часть листа спрайта для одного кадра.CAKeyframeAnimation установлен в дискретный режим, и все координаты проверены.Мне кажется, что время от времени CAKeyframeAnimation пропускает ключевой кадр и показывает мне только центральную часть моего листа спрайта вместо части, которую предполагается вырезать на основе предоставленного массива contensRects.Как это исправить?Также на ту же тему, как отладить CAKeyframeAnimation в целом и узнать, что происходит?

спасибо!

1 Ответ

1 голос
/ 18 июня 2011

чтобы исправить это, я завернул свою анимацию в CATransaction и временно отключил все действия со слоями:

[CATransaction begin];
[CATransaction setValue:(id)kCFBooleanTrue forKey:kCATransactionDisableActions]; // we need to disable all layer actions temporarily

.............. the rest of animation code ...............

[CATransaction commit];

спасибо документации Apple!

...