Unity拓展方法的定义与调用
拓展方法的定义
- 拓展方法必须定义在静态类中
- 拓展方法必须是静态的
- 拓展方法的修饰符this必须在第一个参数前方
示例:
public static class Expand{public static T GetComponent<T>(this GameObject varGame,string varPath)where T : Component{ if (string.IsNullOrEmpty(varPath)) return varTran.GetComponent<T>(); Transform TempTran = varTran.transform.Find(varPath); if (TempTran == null) return null; return TempTran.GetComponent<T>();}}
拓展方法的调用
使用参数类型与拓展方法带有this标识的参数类型相同的变量直接调用即可
示例:
public class Demo{public void Demomethod(){GameObcjet tempGame;tempGame.GetComponent<MonoBehaviour>("UI");}}