答案 0 :(得分:1)
要在其父层次结构中获取GameObject的索引并更改其位置,可以使用子项的transform组件的GetSiblingIndex和SetSiblingIndex函数。第一个将为您提供与父级层次结构中特定子项的位置相对应的索引,而第二个将允许您将其放在特定索引处。
以下示例将打印所有子元素的索引,因此从0到numberChild - 1:
void Start()
{
Transform parentTransform = Parent.transform;
int numberChildren = parentTransform.childCount;
for(int i = 0; i < numberChildren; i++)
{
int index = parentTransform.GetChild(i).GetSiblingIndex();
Debug.Log(index);
}
}
由您来决定如何使用SetSiblingIndex函数为您的游戏目的重新排序元素。
附注:您可以使用GameObject的name组件更改GameObject的名称。如果你想快速识别所有孩子,这可能非常方便:
Parent.transform.GetChild(i).name = "Item1";
此外,如果您正在考虑经常使用Parent对象的transform组件,请将引用存储在您的类中。