如何获取实例化Canvas Element Prefab的所有子项

时间:2015-06-24 06:27:13

标签: unity3d unity3d-gui

我已经在画布中实例化了一个Scroll Rect Prefab,现在我需要获取该实例化预制件的所有子节点以及每个预制件中的文本组件。

我没有使用下面的代码获取它们。 UIManager.uiManager.NewCanvasMenuCityPrefabs[Number]是对实例化的canvas元素预制件的引用。

Transform[] Parent = UIManager.uiManager.NewCanvasMenuCityPrefabs[Number].transform.GetComponentsInChildren< Transform >();

foreach (Transform Child in Parent)
{
     print(Child);
}

但我仍然无法得到任何元素的孩子。

1 个答案:

答案 0 :(得分:3)

    var canvas = UIManager.uiManager.NewCanvasMenuCityPrefabs[Number].transform;
    for (int i = 0; i < canvas.childCount; i++)
    {

       var textComponents =  canvas.GetChild(i).GetComponents<Text>();
    }