2009-07-29 9 views
0

Je travaille sur une application Flex qui inclut un composant d'analyse - un bloc de texte qui se déplace sur une partie de l'écran de droite à gauche, implémenté en tant qu'objet Label étant déplacé par un effet Déplacer à travers un objet Canvas contenant. (D'accord, techniquement, pour le moment, c'est un objet Image qui est déplacé, mais comme c'est une exploration de texte, je travaille à éliminer l'image et à la présenter sous forme de texte.) Comme un peu de bonbon visuel, J'essaye de fondre le texte quand il apparaît et de l'effacer quand il disparaît, plutôt que d'avoir des arêtes vives évidentes à chaque extrémité du Canevas.Fade-In de texte d'exploration et -out dans Flex

Je l'ai largement fait en plaçant de petits rectangles sur les côtés gauche et droit du Canevas, en les réglant sur la couleur de fond, et en leur donnant un dégradé alpha. Cela fonctionne pour la majorité des situations, et si je ne trouve rien de mieux, je le mettrai volontiers en production. Cependant, quand il y a une image/motif d'arrière-plan au lieu d'une couleur de fond pleine, ceci ne fonctionnera pas; il y aura deux blocs monochromatiques très visibles à chaque extrémité du crawl. (Notez que l'image/motif d'arrière-plan s'applique à l'ensemble de l'application, dont le canevas Canvas n'est qu'une partie, et que l'arrière-plan de l'analyse est transparent.)

La seule solution générale Je peux voir est d'appliquer en quelque sorte l'alpha gradiant au crawl lui-même - il se fanent dedans et dehors sur les bords. Mais je n'ai aucune idée de comment tu ferais ça pour quelque chose comme ça. Mettre le dégradé sur le canevas semble inutile, et s'il était sur l'étiquette, il devrait glisser le long de l'étiquette de gauche à droite à la même vitesse que l'étiquette se déplace sur le canevas de droite à gauche.

Y a-t-il une solution qui me manque, ou devrais-je jeter cela dans la pile Plus de problèmes que d'avantages?

Répondre

0

Vous pouvez essayer d'ajouter un effet de fondu en parallèle.

+0

Cela ne s'appliquerait-il pas à l'ensemble de l'objet Label? Je veux juste apparaître ou disparaître sur les bords visibles à l'écran. – BlairHippo

+0

Hmmm ... Vous pouvez créer un masque dégradé autour de votre toile entière, puis le définir comme masque pour l'étiquette. – CookieOfFortune

+0

Hmm. Maintenant, cela semble prometteur. Aurais-je besoin de déplacer explicitement le masque de gauche à droite lorsque l'étiquette se déplace à travers le canevas (si une telle chose est même possible), ou est-ce que l'étiquette pourrait l'utiliser alors qu'elle est ancrée par le canevas? (S'il vous plaît pardonnez-moi si c'est une question idiote, j'apprends encore Flex.) – BlairHippo