我正在使用libgdx來開發mygame。Libgdx GestureListener來處理HoldDownDown
我正在使用GestureListener來處理我的觸摸事件。 我的目標是當玩家在屏幕上觸摸時,讓角色向右或向左移動。
問題是,GestureListener沒有任何方法來處理這個問題。如果我使用平移,玩家必須滑動才能觸發該方法。另外,GestureListener沒有touchUp方法,所以我不能將touchDown和touchUp結合起來。
有沒有辦法做到這一點?
我正在使用libgdx來開發mygame。Libgdx GestureListener來處理HoldDownDown
我正在使用GestureListener來處理我的觸摸事件。 我的目標是當玩家在屏幕上觸摸時,讓角色向右或向左移動。
問題是,GestureListener沒有任何方法來處理這個問題。如果我使用平移,玩家必須滑動才能觸發該方法。另外,GestureListener沒有touchUp方法,所以我不能將touchDown和touchUp結合起來。
有沒有辦法做到這一點?
Libgdx GestureDetector
設計用於檢測高級「手勢」,如滑動,捏和平移,它不能報告其他類型的觸摸事件。
有用於獲取你想要的信息了幾個選項:
首先,你可以用更直接的InputProcessor
,以獲得原始觸摸事件,並跟蹤長期接觸。您可能需要使用InputMultiplexer
才能在現有的手勢監聽器和新的輸入處理器之間共享輸入。
其次,你可以在你的更新方法中使用poll for the is-being-touched state。只需檢查Gdx.input.isTouched(x)
,然後Gdx.input.getX(x)
和Gdx.input.getY(x)
(對於x
,取值範圍爲0到20,具體取決於您希望支持多少個活動指針)。
嘿,thx,我已經使用輸入處理器,它的工作。 但我仍然不明白InputMultiplexer,我必須使用它嗎?我已閱讀此https://code.google.com/p/libgdx-users/wiki/handlingUserInput,但我仍然不明白。 – Algorithman
如果您想一次使用多個輸入處理器,則需要'InputMultiplexer'。否則不需要。如果您有更具體的問題,可能最好問一個新問題。 –
好的,謝謝 – Algorithman