簡體   English   中英

如何使用 UI 按鈕模擬鍵盤按下?

[英]How do I simulate a keyboard press using an UI button?

我正在嘗試將我為 PC 制作的跑步游戲移植到 Android 上,所以我已經使用空格鍵、向上箭頭、向下箭頭和 s 按鈕設置了完整的玩家控制,所以我希望能夠只創建 UI 按鈕模擬鍵盤按鍵。

例如,我有什么方法可以創建一個腳本,說明OnButtonPress觸發鍵盤鍵,例如用於跳躍的空格鍵?

您可以將工作拆分為可以從任一事件調用的函數,而不是模擬輸入。

跳躍示例——

private void DoJump()
{
    // Jump logic here
}

電腦輸入

private void Update()
{
    if (Input.GetKeyUp(KeyCode.Space))
    {
        DoJump();
    }
}

移動輸入

[SerializeField]
private Button jumpButton; // <- assign this in inspector

private void Awake()
{
    jumpButton.onClick.AddListener(() => DoJump());
}

此設置的另一種替代方法是使用新的輸入系統。 新的輸入系統允許您將來自不同來源的輸入映射到相同的操作。 新的輸入系統

當需要控制器、鼠標/鍵盤和操縱桿支持時,這是我現在處理輸入的首選方式。

對於一個現有項目,您的一切都按預期工作,使用上面的第一個示例通常更容易且工作量更少。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM