实现一个静态类,用{字符串,委托}字典储存回调方法。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public static class GobalEvent{
//事件委托
public delegate void callBack();
//事件字典,储存{字符串,事件委托}键值对
static Dictionary<string, callBack> events = new Dictionary<string, callBack>();
//通过名字,和回调函数添加事件
static public void Add(string eventName,callBack callBack)
{
events.Add(eventName, callBack);
}
//通过名字发送事件
static public void Emit(string eventName)
{
events[eventName]();
}
//通过名字移除事件
static public void Remove(string eventName)
{
events.Remove(eventName);
}
}
示例:注册回调事件
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Scene : MonoBehaviour {
// Use this for initialization
void Start () {
//添