unity中自定义的委托的使用invoke方法是什么意思

2025-02-22 14:20:25
推荐回答(2个)
回答1:

1、不要把委托想象的太高深,委托就是一种特殊的类型,就像 string 之类的类型一样,只不过它特殊在是用来封装“方法”的。委托的定义需要跟它要封装的方法签名(返回类型、参数列表)相同。 2、没太理解题主问的“重复产生自身的委托

回答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);
}

这里就已经完成点击按钮发送myEvent事件了,在其他的脚本中订阅该事件并提供相应方法即可