2010-03-12 2 views
2

Je souhaite faire une animation personnalisée en utilisant l'animation de base mais j'ai le problème (sans doute) classique de la réinitialisation des animations quand elles sont terminées.Comment puis-je obtenir une animation de base Une animation explicite se comporte exactement de la même manière qu'une animation implicite?

Bien sûr, cela peut être arrêté en utilisant:

[animation setFillMode:kCAFillModeForwards]; 
[animation setRemovedOnCompletion: YES]; 

Cependant, je suis alors laissé avec une couche qui ne répond pas aux demandes de la déplacer comme une animation reste en place.

je pouvais supprimer l'animation, mais la position est perdu ... plus il tout semble trop compliqué pour quelque chose qui devrait être réalisable simplement ...

Ce que je voudrais est que lorsque l'animation est terminée , l'animation quitte la couche où elle l'a laissée, puis disparaît comme si elle n'était jamais là.

Le même comportement qu'une animation implicite. Comment cela peut il etre accompli?

Pour l'instant, je dois définir le délégué d'animation et écouter animationDidStop: finished: calls, où je dois alors désactiver les animations implicites, définir la/s valeur de la couche de présentation, et comm ".

Il doit y avoir un moyen plus facile ...

Répondre

Questions connexes