0
到目前为止,我已经设法构建了一个简单的基于文本的预加载器,可以加载外部SWF文件。我有很多预构建的SWF,并且从外部加载它们似乎是最好的选择。我设法让我的预加载器工作,但是我想在事件完成后删除事件监听器和加载器子代。请有人看看我的代码,并解释我做错了什么。删除AS3预加载器中的事件监听器
非常感谢你,
卢克
var req:URLRequest = new URLRequest("gallery.swf");
var loader:Loader = new Loader();
var finishLoading:Loader = new Loader();
finishLoading.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, done);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, fileLoaded);
loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, preload);
loader.load(req);
function fileLoaded(event:Event):void
{
addChild(loader);
}
function preload(event:ProgressEvent):void
{
var percent:Number = Math.round(event.bytesLoaded/event.bytesTotal * 100); //this gives a percent of how much data has been loaded
preload_txt.text = String(percent) + "%";
}
function done(event:ProgressEvent):void
{
if(event.bytesLoaded >= event.bytesTotal){
removeChild(loader);
loader = null;
loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, fileLoaded);
loader.contentLoaderInfo.removeEventListener(ProgressEvent.PROGRESS, preload);
}
}
doh!这就说得通了。相对较新的AS3。感谢您的快速响应! – LJEmmerson 2012-08-02 11:09:32
接受这个答案,如果它符合您的需求! – Florent 2012-08-02 12:18:24