1、不要把委托想象的太高深,委托就是一种特殊的类型,就像 string 之类的类型一样,只不过它特殊在是用来封装“方法”的。委托的定义需要跟它要封装的方法签名(返回类型、参数列表)相同。 2、没太理解题主问的“重复产生自身的委托
//先定义委托 参数列表根据自己的实际需要来定义
public delegate void MyDelegate(GameObject go);
//然后根据委托定义事件
public event MyDelegate myEvent;
void Start()
{
//假设你使用的NGUI,按钮为游戏对象本身
UIEventListener.Get(this.gameobject).onClick = ButtonClick
}
void ButtonClick(GameObject go)
{
myEvent(go);
}