将实例元素添加到实例化的父级

时间:2019-04-04 21:13:02

标签: c# visual-studio unity3d

我正在使用四个预制件,“ Elements_”是父级,content_image,content_tittle和content_Options是子级。在for中,我要在您名字的末尾添加一个数字,以将其放入父亲的内部。知道怎么做吗?

object hierarchy

1 个答案:

答案 0 :(得分:0)

如果您希望Content_image_1,Content_tittle_1和Content_Options_1是elements_1的子代,则可以这样做:

 public GameObject[] Elements;


    public GameObject aux;
    public int numberofchildren=3;

    //...

    //instances yours objects

    //...


    public void makeChildren()
    {


        for (int i = 0; i < numberofchildren; i++)
        {

            aux = GameObject.FindGameObjectWithTag("Content_image_" + i);
            aux.transform.parent = Elements[i].transform;

            aux = GameObject.FindGameObjectWithTag("Content_tittle_" + i);
            aux.transform.parent = Elements[i].transform;

            aux = GameObject.FindGameObjectWithTag("Content_Options_" + i);
            aux.transform.parent = Elements[i].transform;

        }
    }
}

如果要撤消此操作,可以执行以下操作:

public void undoChildren(){
for(int i=0;i<numberofchildren;i++){
Elements[i].transform.DetachChildren();
}
}

请记住将标签添加到每个预制件

希望对您有帮助。