一个元素是否在库中的事实对于它是否可以被订购完全没有影响。只要一个对象是 a DisplayObject
,它就可以被添加到 aDisplayObjectContainer
并因此成为 的目标setChildIndex()
。
MovieClip
和都是TextField
DisplayObject,但只有 MovieClip 是 DisplayObjectContainer。换句话说,您可以将 MovieClips 和 Textfields 添加为子项,但只有 MovieClips 可以包含子项。
因此,可以setChildIndex()
在TextField
.
但是,根据您指示的设置,text是container的子代,而不是evil。那将是一个问题。setChildIndex()
只能用于重新排序具有相同父元素的元素。因此,为了能够将文本放置在敌人的顶部,您实际上必须将容器放置在敌人的顶部……这包括背景。如果您希望文本位于敌人之上,则必须将它们移出容器,可能使用如下设置(来自示例):
stage
foregroundLayer <== a MovieClip on top of the "scene", that contains the Texts
text1
text2
enemyLayer <== a MovieClip that contains all the enemies.
enemy1
enemy2
backgroundLayer <== Your actual "container"
background