2011-07-14 3 views
1

Ecriture d'une petite application afin de démontrer certaines fonctionnalités. J'ai ajouté un élément incorporé à la scène, qui a ensuite été ajouté à certains écouteurs afin de pouvoir être déplacé. Ces données sont stockées dans un objet partagé distant afin que les autres clients puissent également faire glisser l'objet.Les objets incorporés dans Actionscript sont retournés lorsqu'ils sont affichés!

Le problème est que mon objet est retourné horizontalement lorsqu'il est chargé ... et des idées pour lesquelles cela se produit?

code ici: http://pastebin.com/TjegG71W

+0

C'est étrange. Ne voyez rien de probable dans votre code .. pouvez-vous essayer quelques contrôles de santé mentale, comme remplacer le png avec un jpeg, ou un composant différent (comme une étiquette ou autre)? Ma conjecture aveugle est quelque chose à propos du png ou du décodeur png qui fait que Flash le lit simplement à l'envers. – fenomas

+0

Essayez de nettoyer votre projet et de le reconstruire. –

+0

Une étiquette s'affiche correctement .. nettoyé et reconstruit le projet et essayé un jpeg. : P – NotCoffeeTable

Répondre

1

Il y avait quelques bogues dans Flex 4.1 autour d'une nouvelle fonctionnalité qui a été introduite, appelée Layout Mirroring. Mise à niveau vers Flex 4.5 devrait les corriger et si vous ne pouvez pas encore mettre à niveau, vous pouvez essayer de définir le style layoutDirection à "ltr" sur votre application.

+0

En fait, il a fallu le mettre à "rtl" mais cela l'explique. Merci! – NotCoffeeTable

0

Puisque vous avez dit ceci est juste une démo ou une preuve de concept, vous pouvez résoudre ce problème pour l'affichage jusqu'à ce que nous allons au fond de celui-ci. Ajouter cette ligne dans 45ish où vous créez le composant:

bannerui = new UIComponent(); 
bannerui.scaleX = -1; 

Pour le débogage ce qui se passe - j'ai le pressentiment que la propriété scaleX est se fait grimper autour avec à un moment donné et se mis à -1 l'un des composants. Permet essayer d'ajouter un écouteur pour et voir ce qui se retracée à la console (ajouter à tout autre composant parent de l'image basculée bien):

ligne 45ish:

bannerui = new UIComponent(); 
bannerui.addEventListener('scaleXChanged' , onScaleXChanged); 

ajouter cette méthode:

private function onScaleXChanged(e :Event){ 
     trace(bannerui.scaleX); 
    } 
+0

Merci, je vais donner un coup de feu demain. J'ai une échelleX = -1 pour le moment. Rendra compte. – NotCoffeeTable

+0

De plus, vous devez utiliser un événement non documenté (scaleXChanged): D – Nate

+0

Rien ne s'y passe, vérifiez l'objet uicomponent et l'objet bitmap. – NotCoffeeTable

0

je construisais pour 4.1.0 ... construit pour 4.5.1 et cela fonctionne ..

fix: mise à niveau Flex SDK: P

Questions connexes