swfがロードされるとデフォルトでflvファイルを再生する外部swfファイルをロードしました。問題は、swf ファイルをメモリから削除する方法です。私のコード:
var myLoader:Loader = new Loader();
var url:URLRequest = new URLRequest("ExternalSWF.swf");
myLoader.load(url);
detailMovieClip.movieHolder.addChild(myLoader);
removeChild、unload、および unloadAndStop の多くの組み合わせを試しましたが、どれも機能しません。正しく参照しないことがすべてだと思います。
アップデート:
Jegan からの回答を使用しましたが、numChildren が 1 つしかないダミー プロジェクトでテストしている場合にのみ機能しますが、実際のコード例では numChildren が 22 を報告したため、それが問題になるかどうかはわかりません。これが実際のコードです:
var myImageLoader:Loader;
var myImageRequest:URLRequest;
var theImagePath:String;
//part from xml processor function
theImagePath = "flash/"+myXML..item_video_link[n];
loadTheMovie(theImagePath);
function loadTheMovie(theImagePath):void{
myImageLoader = new Loader();
myImageRequest= new URLRequest(theImagePath);
myImageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,showMeTheVideo);
myImageLoader.load(myImageRequest);
}
function showMeTheVideo(evt:Event):void{
detailsMovieClip_mc.details_video_holder.dynamicVideoHolder.addChild(myImageLoader);
}
stopVideo(sectionname):viod{
if(detailsMovieClip_mc.details_video_holder.dynamicVideoHolder.numChildren !=0){
trace("what is the number of children: "+numChildren);
myImageLoader.unloadAndStop();
detailsMovieClip_mc.details_video_holder.
dynamicVideoHolder.removeChild(myImageLoader);
}
}