例一: public class FindObject : MonoBehaviour { public Transform[] grandFa; // Use this for initialization void Start () { grandFa = GetComponentsInChildren(); // 获取所有子(孙)节点 foreach (Transform child in grandFa) //遍历所有子孙节点 { print(child.name); } // Update is called once per frame void Update () { } }
例二:
获取所有子孙节点,并修改所有节点的layer值为5
GetComponentsInChildren(); 这种方式是 大家经常用到的,这种是获取自己和它的孩子/孙子有同样的组件(比如Transform, Rigidbody),返回一个数组,数组包括自己和它的孩子。如果他的孩子里面有的是不活跃SetActive(false);则获取不到。 所以就会有第二个参数GetComponentsInChildren(true);
includeInactive =true;