public void Add(string key, GEventCallBack cb) { if (dic == null) { dic = new Dictionary <string, GEventCallBack> (); } dic.Add(key, cb); GEventCenter <string> .Inst.AddEventListener(key, cb); }
/// <summary> /// 移除事件 /// </summary> /// <param name="eventKey">事件Key</param> public void RemoveEventListener(T eventKey, GEventCallBack eventListener) { if (!eventListeners.ContainsKey(eventKey)) { return; } eventListeners [eventKey] -= eventListener; eventNumDic [eventKey] -= 1; if (eventNumDic [eventKey] == 0) { eventListeners [eventKey] = null; eventListeners.Remove(eventKey); } }
/// <summary> /// 注册事件 /// </summary> /// <param name="eventKey">事件Key</param> /// <param name="eventListener">事件监听器</param> public void AddEventListener(T eventKey, GEventCallBack eventListener) { if (!eventListeners.ContainsKey(eventKey)) { eventListeners.Add(eventKey, new GEventCallBack(eventListener)); } else //GEventCallBack gcb = { eventListeners [eventKey] += eventListener; // gcb += eventListener; } if (!eventNumDic.ContainsKey(eventKey)) { eventNumDic.Add(eventKey, 1); } else { eventNumDic [eventKey] += 1; } }