在Unity中获取键盘按键的输入可以通过 Input
类来实现。以下是一些常见的方法:
1. 检测按键按下:
void Update()
{
if (Input.GetKeyDown(KeyCode.Space))
{
// 空格键按下时执行的代码
}
}
在上面的例子中,Input.GetKeyDown(KeyCode.Space)
检测是否按下了空格键。你可以根据需要替换 KeyCode.Space
为其他按键,如 KeyCode.W
、KeyCode.Escape
等。
2. 检测按键持续按住:
void Update()
{
if (Input.GetKey(KeyCode.LeftArrow))
{
// 持续按住左箭头键时执行的代码
}
}
在这个例子中,Input.GetKey(KeyCode.LeftArrow)
检测左箭头键是否被持续按住。同样地,你可以使用其他的 KeyCode
值来检测其他的按键。
3. 检测按键抬起:
void Update()
{
if (Input.GetKeyUp(KeyCode.Z))
{
// 当 Z 键被抬起时执行的代码
}
}
使用 Input.GetKeyUp(KeyCode.Z)
可以检测到 Z 键被抬起的时刻。
4. 获取按键对应的字符串:
有时候需要获取按键对应的字符串,可以使用 Input.inputString
属性:
void Update()
{
string input = Input.inputString;
if (!string.IsNullOrEmpty(input))
{
// input 变量中包含最近按下的按键对应的字符
Debug.Log("最近按下的按键是:" + input);
}
}
这个方法可以用来获取任意按键对应的字符,比如字母、数字等。
注意事项:
- Update 方法的使用 :获取键盘输入通常在
Update()
方法中进行,因为Update()
每帧都会被调用,可以及时响应用户的输入。 - KeyCode 枚举 :Unity 中的
KeyCode
枚举包含了大多数常见键盘按键的定义,你可以查阅官方文档或者在 Unity 编辑器中自动补全来查找所需的按键对应的枚举值。 - Input.inputString 的注意事项 :
Input.inputString
中包含的是最近按下的所有按键对应的字符,所以在处理时需要注意字符串的长度和顺序。