当我从Main.swf加载到另一个swf示例到(B.swf)并重新加载回Main时,我创建了带有3个swf文件(main.swf,A.swf,B.swf)的双测验游戏。 swf再次,它完美没有错误...但当这个过程继续循环,它似乎垃圾邮件CPU内存使用...我应该用什么编码解决它? (**我猜是因为之前的swf文件的内存在进入另一个swf时没有完全删除,新的swf只是替换在顶部) (我使用.unload(),removeChild(),stop()等似乎没有解决这个问题..我确实尽力解决但失败了) 我认为必须有一些代码用来解决这个问题,我不知道还有什么呢。我能给你一点解决方案吗?
你的善意将非常感谢:) 感谢
答案 0 :(得分:1)
您无需在循环中重新加载每个SWF!将变量分配给加载的SWF,并使用该变量与swf进行交互。
private var swfA:MovieClip;
private function onLoadComplete( event:Event ):void
{
//if you've loaded A.swf
swfA = event.currentTarget.content;
}
从那时起,您可以:
//hide the swf
swfA.visible = false;
//remove it from stage
removeChild( swfA );
如果您已将其链接到自己的类,您甚至可以调用方法或设置属性
//for instance...
swfA.answers = [ answer1 , answer2 .... , answern];
swfA.showResult();