下代码实现获取场景中带有Button的所有物体
包括隐藏的物体。
//获取场景中所有物体,不包括unity默认依赖的,但并没有显示在Hierarchy面板内的物体。 var all = Resources.FindObjectsOfTypeAll(typeof(GameObject)) as GameObject[]; foreach (var item in all) { if (item.scene.isLoaded && item.GetComponent<Button>()) Debug.Log(item.name); }
拓展:有些物体不在层级面板显示,但真实存在。