> 文档中心 > Unity拓展方法的定义与调用

Unity拓展方法的定义与调用


拓展方法的定义

  1. 拓展方法必须定义在静态类中
  2. 拓展方法必须是静态的
  3. 拓展方法的修饰符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");}}

冰雪之城