1、查找子物体:主要应用在,当子物体是隐藏状态时Find不到的情况
2、查找脚本:只要有父物体和挂载脚本物体的名字即可
using UnityEngine;
using System.Collections;
public abstract class Global
{
/// <summary>
/// 查找子物体
/// </summary>
/// <param name="trans">父物体</param>
/// <param name="childName">子物体名</param>
/// <returns></returns>
public static GameObject FindChild(Transform trans , string childName)
{
Transform child = trans.Find(childName);
if (child != null)
{
return child.gameObject;
}
int count = trans.childCount;
GameObject go = null;
for(int i = 0 ; i < count ; ++i)
{
child = trans.GetChild(i);
go = FindChild(child, childName);
if (go != null)
return go;
}
return null;
}
/// <summary>
/// 查找脚本
/// </summary>
/// <typeparam name="T">脚本名</typeparam>
/// <param name="trans">脚本所挂物体的父物体</param>
/// <param name="childName">脚本所挂载的位置</param>
/// <returns></returns>
public static T FindChild<T>(Transform trans, string childName) where T : Component
{
GameObject go = FindChild(trans,childName);
if(go == null)
return null;
return go.GetComponent<T>();
}
}