public static void DeleteEventChange(this InputField target) { if (target != null) { XUInputFieldListener listener = target.GetComponent <XUInputFieldListener>(); if (listener != null) { listener.RemoveEventChange(); } } }
public static void InsertEventSubmit(this InputField target, string strEvent, object objParam) { if (target == null) { Debug.LogError("insert event fail,because InputField is null."); return; } if (string.IsNullOrEmpty(strEvent)) { Debug.LogError("insert event fail,because string event is null."); } XUEventListenerBase listenerBase = target.GetComponent <XUEventListenerBase>(); if (listenerBase == null) { target.gameObject.AddComponent <XUInputFieldListener>().SetEventSubmit(strEvent, objParam, eventDelegateXU); } else { if (listenerBase is XUInputFieldListener) { (listenerBase as XUInputFieldListener).SetEventSubmit(strEvent, objParam, eventDelegateXU); } else { Dictionary <EventTriggerType, Dictionary <string, object> > eventMap = listenerBase.GetEventMap(); Object.DestroyImmediate(listenerBase); XUInputFieldListener listener = target.gameObject.AddComponent <XUInputFieldListener>(); foreach (var keyValue in eventMap) { foreach (var keyValue1 in keyValue.Value) { listener.SetEvent(keyValue.Key, keyValue1.Key, keyValue1.Value, eventDelegate); } } listener.SetEventSubmit(strEvent, objParam, eventDelegateXU); } } }