2011-03-01 4 views
0

J'ai un UIView et j'ajoute une de deux sous-vues. Sous-vue 1 est affiché si l'événement 1 est disponible en sous-vue 2 montre est l'événement 2 est disponible eniPhone: Gestion des animations de vues vers des événements asynchrones

Ainsi, les travaux suivants (en pseudocode):..

on_event1: add subview 1 and remove subview 2 
on_event2: add subview 2 and remove subview 1 

Maintenant, je veux ajouter une animation de transition , fondu entre les deux vues en changeant l'alpha.

Mon problème est que si l'animation pour l'événement 1 est en cours et l'événement 2 arrive, je ne peux pas annuler l'animation en cours et commencer la suivante. Ce que je voudrais faire est d'arrêter l'animation en cours et de commencer immédiatement la suivante.

Comment faire ceci ou l'alternative la plus proche?

Répondre

0

Cette question porte sur une façon commune d'arrêter l'animation en partie par:

Cancel a UIView animation?

+0

Il parle de setAnimationBeginsFromCurrentState. Cela peut-il être fait en utilisant des blocs? – puot

0
[UIView transitionFromView:subview1 toView:subview2 duration:0.75 options:UIViewAnimationOptionBeginsFromCurrentState completion:^(BOOL finished) {}];