2009-11-13 36 views
0

我想将SWF文件导入到自定义加载器中,然后将加载的SWF文件作为MovieClip对象处理。该功能的代码可以在下面看到。将外部SWF文件加载到加载器影片中,并将类型转换为MovieClip

public function loadMyMovie(movie:String) 
{ 

    var now:Date = new Date(); 

    var rnd:String = "?randomize=" + now.time; 

    var request:URLRequest = new URLRequest(movie); 

    request.data = getObjectURLVariables(this.loaderInfo.parameters) 

    var loading:Loader = new Loader(); 

    loading.load(request); 

    loading.contentLoaderInfo.addEventListener(Event.COMPLETE, loadComplete); 

    function loadComplete(event:Event):void { 

     var movie:MovieClip = addChild(loading.content); 

     movie.gotoAndStop(0); 

    } 

} 

当我这样做时,我得到以下错误。 “

”将静态类型flash.display:DisplayObject转换为可能无关的类型的值的隐式强制flash.display:MovieClip。“

回答

0

答案是我试图导入的SWF文件是AS2,因此它被导入为AVM1Movie对象。需要与制作SWF的开发人员交谈。

0

你可以试试这个。

AVM1Movie不是DisplayObjectContainer。

+0

我需要能够控制导入的SWF文件的播放方式,所以我将不得不让SWF的开发者修改他的代码或在AS3中重新编译它。 – 2009-11-13 15:21:17