代码之家  ›  专栏  ›  技术社区  ›  Steve Fitzsimons

LibGDX InputAdapter触地下降/触地上升问题-必须保持触地下降至少1秒才能注册触地上升

  •  1
  • Steve Fitzsimons  · 技术社区  · 10 年前

    我在LibGDX中创建了自己的自定义按钮,它扩展了InputAdapter类。我正在重写touchDown和touchUp方法。当触发touchUp事件(即更改屏幕等)时,会触发一个事件。当仅使用touchUp事件时,一切都按预期工作。当使用触地事件时(当前不做任何事情,只触发),需要按下按钮至少1秒,当我抬起手指时触地事件才会触发,否则触地事件无法触发。关于为什么会发生这种情况或如何解决它,有什么想法吗?

    1 回复  |  直到 10 年前
        1
  •  0
  •   Hllink    10 年前

    如果Touch_Down事件返回true,则触发Touch_up,您是否正在处理Touch_Down内的内容?如果处理的时间比离开按钮的时间长,touch_down将不会返回true, 我建议你把游戏逻辑放在输入处理器之外 ,您可以在InputListener JavaDoc中看到:

    void touchUp(InputEvent event, float x, float y, int pointer, int button) 当鼠标按钮或手指触摸上升到任何位置时调用,但仅当touchDown先前为鼠标按钮或触摸返回true时调用。