首页 > 解决方案 > 如何检测变量的键是否被按下?

问题描述

我正在制作一个游戏,它会创建一个你必须按下的随机键。我有一个数组,其中包含随机取一个的字母。我想检测是否按下了键,所以我这样做了:

if (Input.GetKey(KeyCode.lettre))

letter = "A"例如,它会这样做:

if (Input.GetKey(KeyCode."A"))

我怎么得到这个?

if (Input.GetKey(KeyCode.A))

标签: c#visual-studiounity3d

解决方案


GetKey可以用字符串调用,所以你可以这样做:

if (Input.GetKey(letter)) // assuming letter is a string

您可能需要letter小写才能使其正常工作。请参阅此处的键名列表。


或者,您可以使用Enum.Parse将字符串转换为枚举值:

if (Input.GetKey((KeyCode)Enum.Parse(typeof(KeyCode), letter)))

推荐阅读