2011-10-11 1 views
0

J'essaie de centrer les dimensions de l'image dans l'objet sprite dynamique, mais j'obtiens 0 dans les propriétés height et widh. Quelqu'un peut-il s'il vous plaît m'aider à obtenir les dimensions de l'image? J'ai essayé en utilisant diverses propriétés de contrôle de l'image, mais je reçois les dimensions. S'il vous plaît voir le code ci-dessous et les valeurs dans la ligne commenteflex 4 dimensions de l'image

Code MXML:

<mx:Image id = "imgActive" visible="false" /> 
gestionnaire d'événements

:

private function addImageHandler(e:MyCustomeEve){ 
      imgActive.source = e.imageUrl; 
      imgActive.visible = true; 

      GAME_STATUS = "ITEM_SELECTED"; 
      trace(imgActive.width, 
       imgActive.height, // 0 
       imgActive.contentHeight, // 0 
       imgActive.contentWidth, // NaN 
       imgActive.content.width, // error because imgActive.content is null 
       imgActive.content.height // error because imgActive.contentis null); 
      imgActive.cacheAsBitmap = true; 
} 
+0

Quel est l'événement que vous écoutez? – Kodiak

Répondre

2

Lorsque vous définissez la source de l'image que vous aurez à attendre pour charger le contenu. Lorsque vous chargez l'image, la fonction de gestionnaire onImgActiveComplete est appelée et vous pouvez ensuite obtenir les dimensions de l'image en utilisant, par exemple, imgActive.content.width et imgAcive.content.height.

Hope this helps,

Blaze

+0

Merci Blaze pour l'idée. Cela a conduit à un autre problème. Pouvez-vous s'il vous plaît vérifier http://stackoverflow.com/questions/7724739/flex-4-wait-for-load-complete-without-freezing –

+0

Je regardais juste ceci: D –