2011-10-11 158 views
0

我試圖讓圖像尺寸居中動態精靈對象,但我在高度和widh屬性0。有人可以幫助我獲得圖像尺寸嗎?我試圖通過使用圖像控制的各種屬性,但我得到的尺寸。請參見下面的代碼和內聯值評論flex 4圖像尺寸

MXML代碼:

<mx:Image id = "imgActive" visible="false" /> 

事件處理程序:

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

什麼是你正在收聽的事件? – Kodiak

回答

2

當您設置圖片的來源,你會不得不等待它加載內容。添加一個事件監聽器,如imgActive.addEventListener(Event.COMPLETE, onImgActiveComplete);

加載圖像時,將調用onImgActiveComplete處理函數,然後可以分別使用imgActive.content.width和imgAcive.content.height獲取圖像的尺寸。

希望這有助於

大火

+0

感謝Blaze的想法。這導致了另一個問題。你可以請檢查http://stackoverflow.com/questions/7724739/flex-4-wait-for-load-complete-without-freezing –

+0

我只是看着這個:D –