public delegate void VoidDelegate (GameObject go);
public VoidDelegate onClick;
void OnClick () {
if (onClick != null) {
GameLogger.UI.Log(onClick.Method.ReflectedType.FullName + "----->" + onClick.Method.Name);
onClick(gameObject);
}
}请只留意Log后面的()里面的内容
注意要理解的是,因为onClick是一个UIEventListener->VoidDelegate的变量,所以如果你直接用onClick.GetType()来获取是只会获取到VoidDelgate的。
可以想一下,这个onClick不同的,那就是它注册的方法了,所以要通过这个注册的方法的反射类型来找到具体的注册类
onClick.Method就是获取这个委托所代表的方法