Actionscript 3 将现有对象后面的子对象添加为3

Actionscript 3 将现有对象后面的子对象添加为3,actionscript-3,flash,flash-cs5,addchild,Actionscript 3,Flash,Flash Cs5,Addchild,我用FlashCS5(as3)做了一个游戏,我试图在已经存在的物体后面的舞台上添加一个孩子。例如,我在屏幕底部有一个条,从你开始游戏时就在那里,我有一些我想落在它后面的物体,但是它们落在它前面,因为我在后面把它们添加到舞台上。有没有一种方法可以在不必不断地将吧台重新添加到舞台上的情况下添加掉在吧台后面的物体?提前感谢。您可以创建精灵作为层,并向其添加不同的对象。下面是一个示例,它添加了一个层,用于在bar层后面添加您想要的任何内容,然后添加bar层,因此它将位于顶部。由于您没有任何代码可供参考,

我用FlashCS5(as3)做了一个游戏,我试图在已经存在的物体后面的舞台上添加一个孩子。例如,我在屏幕底部有一个条,从你开始游戏时就在那里,我有一些我想落在它后面的物体,但是它们落在它前面,因为我在后面把它们添加到舞台上。有没有一种方法可以在不必不断地将吧台重新添加到舞台上的情况下添加掉在吧台后面的物体?提前感谢。

您可以创建精灵作为层,并向其添加不同的对象。下面是一个示例,它添加了一个层,用于在bar层后面添加您想要的任何内容,然后添加bar层,因此它将位于顶部。由于您没有任何代码可供参考,因此非常粗糙:

package  {
    import flash.display.*;
    public class Test extends MovieClip {

        var barLayer:Sprite;
        var objectLayer:Sprite;

        public function Test() {

            var objectLayer = new Sprite();
            //add the object layer to your main Class
            this.addChild(objectLayer);

            //now you can add movie clips or sprites to objectLayer whenever you like

            //then create the bar layer
            var barLayer = new Sprite();

            //add your bar Display Object here
            var bar = new MovieClip();//draw the bar or reference the library object you've created
            barLayer.addChild(bar);

            //now add the barLayer
            this.addChild(barLayer);        
        }
    }
}

而不是分层,我会使用addChildAt和setChildIndex来调整每个对象的索引

下一行在舞台上的每一个DisplayObject后面添加您的坠落物体(在这种情况下,您可能应该首先将您的杆添加到舞台上)


谢谢,我还想知道增加孩子是更好,还是只是把他们图形化地放在酒吧的舞台上。酒吧有几个不同的电影剪辑连接到它。这取决于你想做什么作为闪存文件播放。将它们添加到舞台上是完全正确的,如果您愿意,您仍然可以通过代码中的实例名称引用它们。我有大约10种不同的图形,我希望它们覆盖在坠落的孩子身上。我将它们添加到舞台上,而不将它们添加为孩子。我刚把它们扔在舞台上。有没有一种方法可以把孩子放在身后,而不用对其他非孩子的物体做任何事情。或者我应该把它们变成孩子,然后把它们加在一起。好吧,舞台上有一堆东西,你想把它们放在舞台上的另一个物体上?如果是这样,那么就把它们放在舞台上自己的层中,并在那里操纵层次结构。
stage.addChildAt(fallingObject, 0);