unityevent 怎么带参
时间: 2024-05-15 15:17:36 浏览: 108
UnityEvent可以通过定义参数类型和使用AddListener来带参数。例如,你可以这样定义一个UnityEvent:
```
[System.Serializable]
public class MyEvent : UnityEvent<int, float> {}
```
这个事件类型会接受一个整数和一个浮点数作为参数。然后,你就可以通过AddListener来添加相应的监听器,例如:
```
MyEvent onMyEvent = new MyEvent();
onMyEvent.AddListener((int a, float b) => {
Debug.LogFormat("MyEvent called with params: {0}, {1}", a, b);
});
// Call the event with two parameters
onMyEvent.Invoke(42, 3.14f);
```
这个示例添加了一个带两个参数的监听器,并在事件被触发时打印参数值。最后,调用onMyEvent.Invoke将会触发事件,并传入42和3.14作为参数。
阅读全文