UI按钮 - 使用键盘输入激活按钮

时间:2018-04-17 15:25:56

标签: user-interface unity3d

这可能很容易,但我无法找到解决方案。我制作了一个对话系统,当玩家接下来要显示一个句子时,可以点击一个UI按钮。

问题是按钮只在onMouseclick上触发,我想将输入按钮更改为Enter。有谁知道如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

如果您需要确定是否首先选择了该按钮,建议您查看此页面:https://docs.unity3d.com/ScriptReference/UI.Selectable.IsHighlighted.html 如果您不想按下按钮以获得任何功能,您就不会将其链接到任何功能。

工作代码可能如下所示:

public class selectableExample : Selectable{
BaseEventData _event;

void Update()
{
    if (IsHighlighted(_event) == true)
    {
        if (Input.GetKeyDown("enter")){
            print("replace me with working function"); // whatever you want to have happen on button press
        }
    }
}

}

您只需将其附加到按钮上,它就会像按下一样响应。老实说,看起来你真的不需要一个按钮就可以了,但是你可能只用一个标签告诉玩家按下"输入"然后只需检查输入。

答案 1 :(得分:0)

您可以使用Event Trigger组件来使用众多事件类型之一。选择Submit(设置为在编辑>输入设置中输入并返回项目设置>默认情况下输入)。

请勿在{{1​​}}事件中设置任何内容。

现在唯一需要的是主动突出显示OnClick某处的按钮。

相关问题