如何更改 FlxGroup 中 FlxSprite 的 z-index?
How to change z-index of the FlxSprite in FlxGroup?
我有一个异构的 FlxGroup,包含:10 个 FlxSprite 和 4 个 FlxText。我使用 add(obj) 函数添加所有对象,它们的 z 索引由 add 函数确定。
我想在程序 运行 时动态更改 FlxGroup 中对象的 z-index 值(例如:单击鼠标)。
我试过类似的东西:
- this.setChildIndex(object, i) 但是没有这样的函数
- this.add(object) 试图添加已经添加的对象
对于 FlxGroups,"z-index" 只不过是对象在 FlxGroup 的 "members" 数组中的数组位置。因此,如果您有一些 FlxGroup "mygroup",只需更改对象在数组 "mygroup.members".
中的位置即可
编辑:并且非常清楚,它按从第一个元素到最后一个元素的顺序绘制,因此数组位置 0 是堆栈的 "bottom"。
编辑 2:另外,仅供参考:FlxState 的 "members" 数组/add()/remove() 逻辑也使用完全相同的方法。他们基本上是美化了 FlxGroups 本身。
我有一个异构的 FlxGroup,包含:10 个 FlxSprite 和 4 个 FlxText。我使用 add(obj) 函数添加所有对象,它们的 z 索引由 add 函数确定。
我想在程序 运行 时动态更改 FlxGroup 中对象的 z-index 值(例如:单击鼠标)。
我试过类似的东西:
- this.setChildIndex(object, i) 但是没有这样的函数
- this.add(object) 试图添加已经添加的对象
对于 FlxGroups,"z-index" 只不过是对象在 FlxGroup 的 "members" 数组中的数组位置。因此,如果您有一些 FlxGroup "mygroup",只需更改对象在数组 "mygroup.members".
中的位置即可编辑:并且非常清楚,它按从第一个元素到最后一个元素的顺序绘制,因此数组位置 0 是堆栈的 "bottom"。
编辑 2:另外,仅供参考:FlxState 的 "members" 数组/add()/remove() 逻辑也使用完全相同的方法。他们基本上是美化了 FlxGroups 本身。