所以,假设我在代码的开头,当我稍后在代码中添加更多内容时addChild(mc1);
,如何保持它的顶部?addChild(mc2);
默认情况下 mc2 将覆盖 mc1 ...我已经尝试过 z-indexes,但我还没有完全掌握如何在我的情况下使用它...帮助?
谢谢!
所以,假设我在代码的开头,当我稍后在代码中添加更多内容时addChild(mc1);
,如何保持它的顶部?addChild(mc2);
默认情况下 mc2 将覆盖 mc1 ...我已经尝试过 z-indexes,但我还没有完全掌握如何在我的情况下使用它...帮助?
谢谢!
A couple of suggestions:
Use addChildAt(mc1, 0)
addChildAt(mc2, 1)
. You can use addChildAt
to state a specific 'layer' to add a movieclip to.
Whenever you add anything else, re-add the movieclip you want to keep on top, ie:
addChild(mc1); // adds first mc
addChild(mc2); // adds second mc on top of first
addChild(mc1); // re-draws mc1 to the top layer (does not add again, just brings to top!)
您还可以在“mc1”下创建一个父精灵,然后将“mc2”和其他所有内容添加到该父级。该父精灵下的任何内容都将始终保留在 mc1 下,您无需担心手动将 mc1 移动到显示堆栈的前面。
// during when mc1 is first added
var parentSprite:Sprite = new Sprite();
this.addChild(parentSprite);
this.addChild(mc1);
// later in your code, whatever is added to "parentSprite" will always be displayed under mc1
parentSprite.addChild(mc2);
parentSprite.addChild(mc3);
parentSprite.addChild(mc4);
.
.
.
etc
电影剪辑在他们的类中有一个三坐标系统,所以除非我弄错了,你可以尝试将 mc1.z 更改为高于 mc2.z