2017-06-02 1 views
0

J'essaye de créer un acteur avec Scene2D, qui n'apparaît sur l'écran que lorsqu'un événement particulier est déclenché. Pour ce faire, j'utilise le code suivant:L'acteur Scene2D clignote sur l'écran pour 1 image quand il est supposé être invisible

blackRectangle.addAction(Actions.alpha(0)); 
optionalStage.addActor(blackRectangle); 
blackRectangle.addAction(Actions.delay(0.5f,Actions.alpha(0.7f, 0.5f))); 

Le problème que j'ai est que lorsque le rectangle est ajouté à la optionalStage, le rectangle apparaît à l'écran pour 1 cadre, disparaît, et procède ensuite à disparaître dans comme supposé.

J'ai essayé de jouer avec

actor.setVisible(true/false); 

mais pas de chance. Y at-il un moyen d'empêcher ce "flash" lorsque l'acteur est ajouté à la scène, même si son alpha est 0?

Répondre

0

Modifier ceci:

blackRectangle.addAction(Actions.alpha(0)); 

à

blackRectangle.getColor().a=0; 
+0

... et la raison pour laquelle vous devez faire est que les actions commencent toujours à l'image suivante, donc il dans votre code d'origine, il est une trame où l'alpha n'a pas encore été changé à 0. – Tenfour04

+0

Intéressant. Je vais essayer de le faire et ensuite poster ici le résultat. Je vous remercie. – vladutelu

+1

Fonctionne comme un charme! Merci pour la réponse! – vladutelu