2012-11-11 146 views
1

目前我有一個函數(LoadImg)將加載給定的文件位置並返回加載器。最好還包括什麼等於'圖像實際上已經完成加載'行的時候。這通常是通過事件處理程序完成的。但是用這種方式你只能說圖像加載後運行另一個功能。但我需要'LoadImg'函數來返回圖像。AS3:在加載圖片返回圖片

function LoadImg(Img:String):Loader 
{ 
var myLoader:Loader; 

myLoader=new Loader(); 
myLoader.load(new URLRequest(Img)); 

return myLoader; 
} 

我該怎麼說只有在'myLoader'完成時才返回?

回答

1

我不認爲它可能與一個異步事件(加載完成)使用同步調用(函數返回)。

附加事件偵聽器的完整的事件是去了,不知道如何將適合你的代碼的方式。

這裏有一個類似的問題,這可能是有用的:Image size in AS3,響應你的問題非常有用。

0

我認爲解決方案是使用代理服務器。

這個想法是代理,這是一個圖像容器。容器可以被傳回並被其他函數和對象用來設置位置。一旦圖像實際加載完畢,加載完成處理程序可以使用加載的圖像更新容器。

您可以通過代碼示例和詳細說明在 http://www.as3dp.com/category/design-patterns/proxy/中閱讀代理設計模式。