Flash _AS3中的root.loadmove()?
AS3中以下AS2代码的AS3等价物是什么?我不想把新的swf加载到我的主swf中,我想让它在AS2中完全替换它Flash _AS3中的root.loadmove()?,flash,actionscript-3,actionscript-2,Flash,Actionscript 3,Actionscript 2,AS3中以下AS2代码的AS3等价物是什么?我不想把新的swf加载到我的主swf中,我想让它在AS2中完全替换它 _root.loadMovie(swfURL); 没有必要更换。用Loader加载swf,并将其连接到舞台上。您可以删除附加到stage的所有其他显示对象,您会没事的。这可能是两个实际问题: 加载电影 在根阶段加载电影 答复 您可以使用加载器并将其添加到对象或其阶段 将静态引用添加到所需的“根”对象,并将加载程序添加到静态引用 如果您需要示例代码,请告诉我。在AS3中,您不能像在A
_root.loadMovie(swfURL);
没有必要更换。用
Loader
加载swf,并将其连接到舞台上。您可以删除附加到stage的所有其他显示对象
,您会没事的。这可能是两个实际问题:
如果您需要示例代码,请告诉我。在AS3中,您不能像在AS2中那样替换加载的电影剪辑 Loader类可以加载要附加到主阶段的内容
您可能需要创建一个包装器类来加载初始内容,然后在发出另一个加载请求时将该内容切换出去。加载swf的示例代码
var mySwfUrl:String="http://someurlhere.com/swf.swf";
var loadedSwf:MovieClip = null;// null until loaded
var loader:Loader=new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,handlerSwfLoaded);
loader.load(new URLRequest(mySwfUrl));
function handlerSwfLoaded(event:Event):void{
loader.contentLoaderInfo.removeEventListener(Event.COMPLETE,handlerSwfLoaded);
loadedSwf=event.target as MovieClip;
}
如果要将新swf添加到显示列表中
holder.addChild( yourSwfReference );
如果你想移除它
holder.removeChild( yourSwfReference );
如果swf当前显示在某处。。。例如在支架上。。。调用此将从保持器中删除它,并将其添加到另一个保持器中
anotherHolder.addChild( yourSwfReference );
你不能以你正在尝试的方式替换 无法从所述swf替换根级swf 你可以使用javaScrit。可以从AS3调用javaScript函数,JS函数可以替换swf 或
要在AS3中实现这一点,您可以创建一个main.swf,它除了加载其他内容之外什么都不做。退房它将为您处理内容的加载和卸载。有许多关于Gaia的有用教程。如果您将swf文件保存在本地计算机中,请尝试此方法
var loader:Loader = new Loader();
loader.load(new URLRequest("external.swf"));
addChild(loader);
AS3加载AS2 swf会有任何问题吗?请参阅文档,了解如何执行此操作的实际示例代码:(在本例中,swf的工作原理与GIF相同)此外,由于它是AS2 swf,它实际上将作为
AVM1Movie
而不是MovieClip
:欧文:加载程序将返回AVM1Movie
。这将有一些限制,但它应该正常运行。但是这与你的问题无关。嗨,谢谢你的回答,我可以看一些将电影加载到根目录的示例代码吗。基本上我想做的是,如果可能的话,把电影完全换成一部新的电影。我该如何处理不同的帧率和尺寸?