public void Bind(UnityEvent_string @event) { #if UNITY_EDITOR UnityEventTools.AddPersistentListener(@event, GetAction <string>(target, methodName)); #else System.Reflection.MethodInfo targetinfo = UnityEvent.GetValidMethodInfo(target, setMethodName, new Type[0]); @event.AddListener((str) => targetinfo.Invoke(target, new object[] { str })); #endif }
public static void HandleDropdown(int index, TMP_Dropdown dd, UnityEvent_string stringNotify) { if (stringNotify.GetPersistentEventCount() == 0) { return; } if (index >= 0 && index < dd.options.Count) { TMP_Dropdown.OptionData o = dd.options[index]; stringNotify.Invoke(o.text); } }
public static void UiTextUpdate(TMP_Dropdown dd) { UiText onSelection = dd.GetComponent <UiText>(); if (onSelection == null) { return; } UnityEvent_string setText = onSelection.setText; HandleDropdown(dd.value, dd, setText); }