0

我四处搜索,无法将找到的任何内容应用于我的代码以使其正常工作。

我正在构建一个网站,导航到每个页面(框架)将加载一个包含内容的外部 swf。理想情况下,我希望在我离开框架时卸载内容,这样我就可以加载新的 swf。
这是我用于加载 swf 的 as3:

var swfLoader:Loader = new Loader();

stage.addChild(swfLoader); swfLoader.x = 0; swfLoader.y = 100;

var bgURL:URLRequest = new URLRequest("gallery_swf/reg_slide.swf");

swfLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadProdComplete);

swfLoader.load(bgURL);

函数 loadProdComplete(e:Event):void {

跟踪(“文件加载”);

}

4

2 回答 2

0

卸载外部 swf 最安全的方法是使用加载程序的unloadAndStop方法。如果您的目标是 Flash Player 9,您将无法使用此方法,而必须使用此方法unload()。请注意,这unload()需要额外的手动工作以确保正确卸载所有物品。

引用链接:

尽管 Loader.unload 删除了 Loader 对象的子对象,但卸载的对象仍将在后台运行,直到它被垃圾收集器实际处理掉。由于垃圾收集器不会处理引用的对象,因此“卸载”的内容可能永远不会被删除(例如,事件侦听器可以引用该对象)。

于 2012-12-15T12:54:10.360 回答
0

只需使用:

swfLoader.unload(); 

卸载 swf。

于 2012-12-15T12:42:35.993 回答