2008-09-15 7 views

Répondre

1

Je préfère utiliser une bibliothèque d'interpolation pour ce genre de choses. Vérifiez-les:

Tweener

TweenLite/TweenMax

KitchenSync

J'ai eu une bonne chance en utilisant effectivement les deux premiers, et avoir lu de grandes choses sur le dernier.

3

Si vous créez une application Flex, vous devez utiliser les classes d'effets natives de Flex. Ils ont probablement déjà été compilés dans votre application, car les composants principaux les utilisent, et vous n'augmenterez pas votre taille SWF avec des fonctionnalités en double, comme vous le feriez si vous utilisiez une autre bibliothèque. Pour les animations simples, mx.effects.AnimateProperty ou mx.effects.Tween devrait fonctionner correctement.

Si vous travaillez sur un projet ActionScript normal (sans le framework Flex), je suis d'accord avec la réponse de Marc Hughes. Cependant, si c'est le cas, ne dites pas que vous utilisez Flex, car cela implique que vous utilisez le framework Flex et cela peut être très déroutant. Si vous parlez de Flex Builder, veuillez utiliser le nom complet pour éviter les malentendus potentiels.

2

Vous ne pouvez pas toujours utiliser la classe d'effets Flex avec des sprites simples. Certains effets s'attendent à ce que votre objet cible (l'objet à interpoler) implémente l'interface IUIComponent, alors que d'autres ne le font pas. Vous pouvez donc utiliser mx.effects.Tween, ou si vous devez utiliser l'un des classages d'effets, vous devrez contraindre votre sprite dans un UIComponent.

Une autre option consiste à utiliser l'un des paquets d'interpolation suggérés ci-dessus ou à faire rouler le vôtre avec goasap!

goasap

+0

Merci, c'était exactement ce que je cherchais. – Tiago

0

Vous pouvez utiliser mx.effects.AnimateProperty même si votre cible est pas un UIComponent. Si l'interpolation que vous voulez réaliser est simple (Déplacer, Redimensionner, Fondre, etc.) cela vous évite d'écrire le code de la plaque de chaudière que mx.effects.Tween requiert.

Questions connexes