public void OpenNumericKeyboard(UnityAction <float> validateCallback, Transform anchor, float?value = null) { if (numericKeyboardOpen) { return; } numericKeyboardOpen = true; OpenWindow(numericKeyboardWindow, 1f); NumericKeyboard keyboard = numericKeyboardWindow.GetComponentInChildren <NumericKeyboard>(); keyboard.Clear(); if (null != value) { keyboard.SetValue(value); keyboard.Selected = true; } keyboard.onSubmitEvent.RemoveAllListeners(); keyboard.onSubmitEvent.AddListener(validateCallback); UIButton closeButton = numericKeyboardWindow.Find("CloseButton/CloseWindowButton").GetComponent <UIButton>(); closeButton.onReleaseEvent.AddListener(CancelNumericKeyboard); Vector3 offset = new Vector3(0.35f, 0.18f, -0.01f); numericKeyboardWindow.position = anchor.TransformPoint(offset); numericKeyboardWindow.rotation = Camera.main.transform.rotation; }
public void CloseNumericKeyboard(bool cancel = false) { NumericKeyboard keyboard = numericKeyboardWindow.GetComponentInChildren <NumericKeyboard>(); keyboard.onSubmitEvent.RemoveAllListeners(); UIButton closeButton = numericKeyboardWindow.Find("CloseButton/CloseWindowButton").GetComponent <UIButton>(); closeButton.onReleaseEvent.RemoveAllListeners(); CloseWindow(numericKeyboardWindow, 1f); numericKeyboardOpen = false; }