我有一个在Flash Professional中创建的.swf动画。在我的动作项目中使用它,我把它嵌入如下:嵌入式.swf动画不停止停止()调用?
[Embed(source="../lib/fetching.swf")]
public var Fetching:Class;
我然后创建一个实例,并将其添加如下的阶段:
//class variable
var mc:MovieClip;
mc = new Fetching();
this.addChild(mc);
这使我的动画出现在屏幕和循环无限期。但是,在拨打mc.stop()
时,动画不会停止。我已经尝试通过调用removeChild(mc)
从舞台上移除动画片段,但在ENTER_FRAME事件中添加侦听器告诉我动画片段仍在播放。
swf文件扩展了movieClip,那么为什么你不能投射一个这样的? – BadFeelingAboutThis
我一直使用swf文件不使用嵌入。只使用一个Loader。所以我不知道确切的原因。但我知道参考这篇文章:(1):[embedded-movieclip-gotcha](http://www.airtightinteractive.com/2008/05/as3-embedded-movieclip-gotcha/)(2):[embed movieclip从外部swf运行时错误](http://jadendreamer.wordpress.com/2010/11/18/as3-fix-embed-movieclip-from-external-swf-runtime-error/)(3):[问题 - 与-embedding-swfs-in-actionscript-or-flex](http://chrismweb.com/2011/03/20/problems-with-embedding-swfs-in-actionscript-or-flex/) –
当您嵌入SWF,你得到的是扩展Loader而不是MovieClip的东西。这个Loader将调用带有包含SWF的嵌入ByteArray的LoadBytes()。只有在SWF中嵌入特定符号时,嵌入对象才会成为MovieClip。 – cleong