2011-10-11 5 views
0

동적 스프라이트 개체의 중심에 이미지 크기를 가져 오려고하지만 height 및 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

감사합니다. 그것은 또 다른 문제를 야기합니다. 너는 http://stackoverflow.com/questions/7724739/flex-4-wait-for-load-complete-without-freezing을 확인해 주시겠습니까 –

+0

나는 이것을 보았습니다 : D –