main.swf(在as3上构建)reload child.swf(在as2上构建)

时间:2012-04-24 05:01:31

标签: actionscript-3 flash adobe actionscript-2 flash-cs5

我遇到重装child.swf的问题。在第一次加载(loadPattern())时它工作正常,但是卸载并加载第二次它不正确地工作(不加载照片内容)没有任何错误。

Child.swf构建于as2。

main.swf建立在as3上。

var childSwf:Object;
var loader:Loader = new Loader();
var childLoaded:Boolean = false;

function loadPatternHandler(event:Event):void 
{ 
   childSwf = event.target.content; 
   childSwf.x = 0;
   childSwf.y = -35;

} 

function loadPattern():void
{
    stopPattern();

    var myswf:String = "child.swf";

    var Xpos:Number = 0;
    var Ypos:Number = 0;

    var req:URLRequest = new URLRequest(myswf);

    loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadPatternHandler); 

    //loader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);

    loader.load(req);
    loader.x=Xpos;
    loader.y=Ypos;
    addChild(loader);
    childLoaded=true;

}

function stopPattern():void
{
    if(childLoaded)
    {
        loader.unloadAndStop();
        //loader.unload();
        removeChild(loader);
        loader=null;
        loader = new Loader();
        childLoaded = false;
    }
}

loadPattern();

是否在stopPattern()上没有完全卸载?

有什么建议吗?

感谢。

1 个答案:

答案 0 :(得分:0)

您是否研究过通用AS2加载解决方案?我使用了SWFBridge,效果很好:

http://gskinner.com/blog/archives/2007/07/swfbridge_easie.html