如何在Unity中使用KEYCODE_DPAD_CENTER键代码

时间:2019-01-28 15:58:21

标签: c# android unity3d keycode vuzix

我正在将Unity应用程序移植到Vuzix M300 Android耳机,并且设备顶部的选择按钮在我的Unity应用程序中不起作用。根据Vuzix开发人员支持页面,它使用键代码KEYCODE_DPAD_CENTER,而Unity看不到。有什么办法解决这个问题,因为我们需要让该按钮在我们的应用中正常工作。

我还尝试了KeyCode.JoystickButton0,KeyCode.Return,KeyCode.Enter,KeyCode.Menu,Input.GetButtonDown(“ Fire1”),KeyCode.Space ...

在此方面的任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

感谢derHugo提供的链接,这是我想出的解决方案:

public class VuzixSelectButton : MonoBehaviour
{  
    KeyCode DPAD_CENTER = (KeyCode)10;

    void Update ()
    {
        VuzixSelect();   
    }

    /// <summary>
    /// Detects Vuzix M300 select button presses
    /// </summary>
    private void VuzixSelect()
    {
        if (SystemInfo.deviceModel.ToLower().Contains("vuzix"))
        {
            if (Input.GetKeyDown(DPAD_CENTER))
            {
                var es = EventSystem.current;
                GameObject obj = es.currentSelectedGameObject;
                ExecuteEvents.Execute(obj, new PointerEventData(EventSystem.current), ExecuteEvents.pointerClickHandler);
            }
        }
    }
}