Beispiel #1
0
        /// <summary>
        /// Start To Use Virtual Keyboard Get input
        /// </summary>
        /// <param name="_handle"></param>
        /// <param name="realTimeInput"></param>
        public void GetInput(VRInputField vrInput, VRInputRequest _inputRequest, VRKeyInputHandle _handle)
        {
            handleInput  = _handle;
            inputRequest = _inputRequest;
            result       = inputRequest.m_RealInput; //自动保留之前输入的信息

            //Set KeyBoard Position
            gameObject.SetActive(true);
            m_VRInputFieldScript       = vrInput;
            transform.localEulerAngles = _inputRequest.m_KeyBoardAngle;
            FollowTarget_Pos(vrInput.transform);
            vrInput.TransformListenerToolScript.AddEventListenner(TransformListenerTool.ListenTransformChangeEventEnum.LocalPosition, FollowTarget_Pos);  //开始跟随对象
#if UNITY_EDITOR
            vrInput.TransformListenerToolScript.AddEventListenner(TransformListenerTool.ListenTransformChangeEventEnum.Rotation, FollowTarget_Rotation);  //开始跟随对象
#endif

            GlobalEntity.GetInstance().Dispatch <bool>(VRKeyboardEvent.KeyBoardStateNotify, true);

            m_CapsShift        = false;
            m_NormalInputState = true;
            appendChar         = ""; //Reset

            if (m_OperateKeyButton != null)
            {
                m_OperateKeyButton.transform.SetSiblingIndex(m_OperateKeyButton.m_Index);
            }

            ShowKeyView();
            m_InputBG.enabled = false;
        }
Beispiel #2
0
        protected override void OnDisable()
        {
            base.OnDisable();
            GlobalEntity.GetInstance().RemoveListener(VRKeyboardEvent.ForceCloseKeyBoard, CloseKeyboard);

            handleInput = null;
            errorMsg    = "";
            errorMsgParameter.Clear();
            if (m_VRInputFieldScript != null)
            {
                m_VRInputFieldScript.TransformListenerToolScript.RemoveListener(TransformListenerTool.ListenTransformChangeEventEnum.LocalPosition, FollowTarget_Pos);  //开始跟随对象
            }
#if UNITY_EDITOR
            if (m_VRInputFieldScript != null)
            {
                m_VRInputFieldScript.TransformListenerToolScript.RemoveListener(TransformListenerTool.ListenTransformChangeEventEnum.Rotation, FollowTarget_Rotation);  //开始跟随对象
            }
#endif
        }