我有一個圖像,我正試圖加載,然後重新加載。這是我對圖像的加載代碼:as3:重新加載圖像
public function loadImage(url:String, _w:int, _h:int):void
{
this._stwidth = _w;
this._stheight = _h;
this._imageURL = url;
if(!_imageURL)
{
return;
}
this.alpha = 1.0; //need this because we might have just faded the image out
_ldr.alpha = 0.0;
_prog.alpha = 1.0;
_sqr.alpha = 0.0;
_sqr.graphics.clear();
if(_hasLoaded)
{
try
{
_ldr.close();
_ldr.unload();
}
catch(e:Error)
{
//trace("bmdisplay has loaded once, but there was an error: " + e.message);
}
}
_ldr.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, onProgress);
_ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
_ldr.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, onError);
_ldr.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onError);
_ldr.contentLoaderInfo.addEventListener(Event.INIT, onOpen);
_ldr.load(new URLRequest(_imageURL));
}
出於某種原因,沒有第2次負載發出錯誤的代碼將不會加載圖像。 有人可以幫我解決這個問題嗎?
我完全失去了爲什麼我的變量_asLoaded會做我的錯。 我有一個onComplete()處理程序,它將該var設置爲true,之後我從未將其設置爲false。
我不知道還有什麼我應該嘗試...
感謝
我已經想到了這一點,雖然我喜歡你的解決方案,使用removeChild()和addChild()來包裝它。最終,我目前正在運行的(並且不會產生任何錯誤的)答案是簡單地重新加載一個新的映像,_不再循環加載器,_not_ try/catch,並且在完成此類之上的其他類時爲其分派事件在顯示列表鏈中。 – jml 2010-01-18 10:46:55