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

时间:2014-01-31 14:59:16

标签: actionscript-3 frame movieclip removechild

此代码生成机场符号作为更大的演示文稿的一部分。这很好用,但是当我改变框架时,物体不会消失,我希望它们能够消失。

我在另一个框架中尝试了不同的方法,但无论我做什么,我都会收到错误:"通过带有静态类型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)
 }

2 个答案:

答案 0 :(得分:0)

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

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

作为MovieClip 部分我没有必要。

答案 1 :(得分:0)

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

this.parent.visible = false

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