加载外部SWF和FD的最后版本

时间:2011-03-30 23:00:41

标签: actionscript-3 flashdevelop

(我正在使用FlashDevelop)

我在项目中加载一些外部swfs时遇到问题。直到几个月前他们将预加载器集成切换为:

时,这种情况很有效

[帧(factoryClass = “预载”)]

从那时起,我的swf加载了一个Loader()没有显示。

知道改变了什么?

谢谢!

代码:

public class Main extends Sprite 
{

    public function Main():void 
    {
        if (stage) init();
        else addEventListener(Event.ADDED_TO_STAGE, init);
    }

    private function init(e:Event = null):void 
    {
        removeEventListener(Event.ADDED_TO_STAGE, init);
        // entry point

        loadMovie("Dots.swf");
    }

    private function loadMovie(url:String):void {
        var mLoader:Loader = new Loader();

        mLoader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
        mLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, onProgressHandler);
        mLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onCompleteHandler);

        mLoader.load(new URLRequest(url));
    }

    private function onCompleteHandler(loadEvent:Event):void {
        trace("COMPLETE");
        addChild(loadEvent.currentTarget.content);
    }

    private function onProgressHandler(event:ProgressEvent):void {
        trace("progressHandler: bytesLoaded=" + event.bytesLoaded + " bytesTotal=" + event.bytesTotal);
    }

    private function ioErrorHandler (e:IOErrorEvent):void {
        trace("ERROR");
    }
}

1 个答案:

答案 0 :(得分:0)

“COMPLETE”被追查了吗?我不能从你在这里发布的代码中说出太多内容,可能会有其他事情发生,特别是在Dots.swf中。

我直接看到的一件事是你的装载机对象可能正在收集垃圾,但如果它正在追踪“完全”,那肯定不是这样。尝试立即将加载器添加到显示列表,看看是否有所作为。例如:

var mLoader:Loader = new Loader();
addChild(mLoader);

我在Flash Develop中完成所有工作并且没有遇到任何问题。如果您能够共享更多代码或示例项目,我可以进一步调查。