コード例 #1
0
    static void InitUiNode(UINode node)
    {
        node.AllRefs  = new List <UIRef>();
        node.AllNodes = new List <UINode>();

        UINode[] uiNodes = node.GetComponentsInChildren <UINode>();
        foreach (UINode uiNode in uiNodes)
        {
            uiNode.AllRefs  = new List <UIRef>();
            uiNode.AllNodes = new List <UINode>();
        }
        foreach (UINode uiNode in uiNodes)
        {
            UINode parentNode = GetParentNode(uiNode.transform);
            if (parentNode)
            {
                parentNode.AllNodes.Add(uiNode);
            }
        }

        UIRef[] uiRefs = node.GetComponentsInChildren <UIRef>();
        foreach (UIRef uiRef in uiRefs)
        {
            UINode parentNode = GetParentNode(uiRef.transform);
            if (parentNode)
            {
                parentNode.AllRefs.Add(uiRef);
            }
        }
    }