Actionscript 3 AS3-将多个视频加载到同一容器中-addChild removeChild

Actionscript 3 AS3-将多个视频加载到同一容器中-addChild removeChild,actionscript-3,flash-cs6,Actionscript 3,Flash Cs6,这是一个使用视频类将特定视频加载到0.0的MovieClip容器中的函数 public var mainVideo:SimpleVideo; public function loadVideo(videoString:String) :void{ mainVideo = new SimpleVideo("videos/"+videoString+".flv","",true,video_container.positionMc); video_container.add

这是一个使用视频类将特定视频加载到0.0的MovieClip容器中的函数

public var mainVideo:SimpleVideo;

public function loadVideo(videoString:String) :void{
    mainVideo = new
    SimpleVideo("videos/"+videoString+".flv","",true,video_container.positionMc);
    video_container.addEventListener(MouseEvent.MOUSE_DOWN,controlVideoPlayer);
    addChild(mainVideo);
    trace('adding new video to container');
}
我想最好在每次加载视频时检查,看看是否已经加载了另一个视频。如果有,则将其删除,然后添加新视频

我尝试过以各种方式使用
removeChild()
,但它似乎无法正常工作

我会使用
removeChild(主视频)
<代码>视频\u容器。removeChild(主视频)? 我如何才能检查是否已经存在
mainVideo

任何帮助都将不胜感激

-更新- 如果我尝试使用
removeChild(mainVideo)
会出现以下错误:

TypeError:Error#2007:参数子项必须为非空。
flash.display::DisplayObjectContainer/removeChild()
位于 MethodInfo-127()处的Main/removeVideo()


如果将视频添加到容器movieclip而不是舞台上,并且该容器的显示列表中一次只有一个SimpleVideo实例,则可以执行以下操作:

if( myVideoContainer.numChildren > 0 )
{
    myVideoContainer.removeChild( myVideoContainer.getChildAt( 0 ) );
}

不过,一个更大的问题是您使用的SimpleVideo类如何清理自身。大多数视频类都有一个cleanup或kill函数,用于删除侦听器并清理netStream。我认为您需要调用类似的调用,以及从容器中删除视频实例。

我希望此响应可以帮助您

-->我会使用
removeChild(主视频)
<代码>视频\u容器。removeChild(主视频)

您应该使用
removeChild
函数,但您需要知道谁是mainVideo的父对象,并调用其父对象的此函数。在您的情况下,我认为,
video\u container
不是父对象,因为它是mainVideo附近的一个变量,您将mainVideo添加到具有
loadVideo
函数的类的实例中

有时您可以使用
mainVideo.parent.removeChild(mainVideo)
,这不是最好的方法,但它很有效,最好知道谁是父对象,并显式地在该“父对象”上调用函数
removeChild()

-->我能检查一下是否已经有一个主视频了吗

好的,您可以执行一个简单的
if(mainVideo!=null){..}
,因为在函数loadVideo中,您每次都会创建新实例,这意味着如果您至少调用一次此函数,那么
if
条件应该为true,这意味着您已经有一个现有的mainVideo

-->
TypeError:Error#2007:参数子项必须为非空。


这意味着您的主视频没有实例化,因为我想您还没有调用
loadVideo()
,这就是@putvande要求您提供更多代码的原因,我们需要了解您在哪里以及何时调用
removeChild()

在哪里添加
removeChild(主视频)
?你能更新你的代码吗?