从flex播放/暂停flash.display.avm1movie

时间:2010-11-10 07:36:06

标签: flex actionscript-3 flash

我正在使用swfLoader在我的flex / actionscript代码中加载外部flash影片。如果加载的swf是为较新的flash播放器版本(我相信9.0或更高版本)而加载的,则它将作为flash.display.MovieClip对象加载,该对象具有播放/暂停和转到帧的方法。但是如果加载的swf是为较旧的flash播放器制作的(我相信6.0),那么它将加载为flash.display.av1movie,它没有播放/暂停的方法。有没有办法可以从我的弹性代码中播放/暂停av1movie。

2 个答案:

答案 0 :(得分:3)

有一种方法:ForcibleLoader。它的工作方式如下 - 将swf作为ByteArray加载,然后修改它并使用loadBytes加载结果。它将as3标志设置为true,将swf版本设置为9.但请注意,as2脚本在AVM2中无法正常工作,因为它与AVM1有许多不同之处。但如果你有简单的动画,这可能会有效。您将获得MovieClip而不是AVM1Movie,只需测试它。

答案 1 :(得分:1)

不,没有!

来自文档:

  The AVM1Movie object can use methods and properties inherited from the 
  DisplayObject  class (such as x, y, width, and so on). However, no 
  interoperability (such as calling methods or using parameters) 
  between the AVM1Movie object and AVM2 objects is allowed.