private bool flagJudgeDownAllow = true;//开始值为true
...
void OnGUI()
{
key = Event.current;
FunctionKeyCodeV1(key);
}
private void FunctionKeyCodeV1(Event key)
{
if (key.isKey)//如果“事件”有效,并且“允许判断按下”。
{
switch (key.keyCode)
{
case KeyCode.Space:
FunctionKeyCode();
break;
case KeyCode.DownArrow:
FunctionKeyCode();
break;
case KeyCode.UpArrow:
FunctionKeyCode();
break;
default:
break;
}
}
}
private void FunctionKeyCode()
{
if (key.type == EventType.keyUp && !flagJudgeDownAllow)
{
Debug.Log(key.keyCode.ToString() + " " + key.type.ToString() + " " + Time.time);
flagJudgeDownAllow = true;//抬起按钮之后才允许继续判断
}
else if (key.type == EventType.keyDown && flagJudgeDownAllow)
{
flagJudgeDownAllow = false;//判断完了 就不允许判断了
Debug.Log(key.keyCode.ToString() + " " + key.type.ToString() + " " + Time.time);
}
}