外部swf文件的AS3预加载器

时间:2011-05-13 18:28:52

标签: actionscript-3

问题!什么是加载外部swf文件的预加载器的最佳方法。 我为按钮的实际操作写了这个

function btnClick(event:MouseEvent):void
{

    removeChild(loader);
    var newSWFRequest:URLRequest=new URLRequest("swf/" + event.target.name + ".swf");
    loader.load(newSWFRequest);
    loader.x = Xpos;
    loader.y = Ypos;
    addChildAt(loader, numChildren);
}

任何帮助都会很棒。

1 个答案:

答案 0 :(得分:0)

只需添加进度事件侦听器并将代码放在处理程序中。

function btnClick(event:MouseEvent):void {
    var newSWFRequest:URLRequest=new URLRequest("swf/" + event.target.name + ".swf");
    loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
    loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressHandler);
    loader.load(newSWFRequest);
    loader.x = Xpos;
    loader.y = Ypos;
    addChildAt(loader, numChildren);
}

function completeHandler(e:Event):void {
    loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, completeHandler);
    loader.contentLoaderInfo.removeEventListener(ProgressEvent.PROGRESS, progressHandler);
    trace("load complete");
}

function progressHandler(e:ProgressEvent):void {
    var perc:Number = Math.round((e.bytesLoaded/e.bytesTotal)*100)/100;
    trace(perc);
}