繁体   English   中英

动作3:更改帧时删除代码生成的动画片段

[英]Actionscript 3: Delete code-generated movieclips when changing frame

此代码生成机场符号,作为更大显示的一部分。 效果很好,但是目前,当我更改帧时,对象不会消失,而我希望它们这样做。

我在另一帧中尝试了不同的方法,但是无论如何我都会得到错误:“通过具有静态类型Class的引用调用可能未定义的方法removeChild。”

我是AS3的新手,所以请记住这一点:)

谢谢。 下面是我的代码。

for (var key:Object in Airports) 
{
var MyAirport = new airport();
MyAirport.x = Airports[key]["x"];
MyAirport.y = Airports[key]["y"];
MyAirport.width = 17;
MyAirport.height = 17;
addChild(MyAirport)
MyAirport.addEventListener(MouseEvent.CLICK, this.clickHandler)
 }

构建每个场景时,将每个场景的所有动画片段放入一个数组中。 然后,您可以遍历该数组并通过调用清除函数将其删除:

function cleanupView():void
{
    for( var i:int = 0; i < collectedMovieClipsArray; i++ )
    {
        var parentContainer:MovieClip = collectedMovieClipsArray[ i ].parent as MovieClip;
        parentContainer.removeChild( collectedMovieClipsArray[ i ] );
    }
}

作为MovieClip的一部分,我没有必要。

感谢您的回答。 但是,我通过使用以下行选择了一条简单的路径:

this.parent.visible = false

不过,这隐藏了我将尝试实现您的代码的所有MovieClip。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM