Вот ссылки, которые помогут вам лучше понять мой ответ:
https://libgdx.badlogicgames.com/ci/nightlies/docs/api/com/badlogic/gdx/scenes/scene2d/InputListener.html#touchDown-com.badlogic.gdx.scenes.scene2d.InputEvent-float-float-int-int-
Эта ссылка показывает один из методов в классе InputListener
. В своем вопросе вы спрашивали о методе touchUp
, который также связан с методом touchDown
.
Метод touchDown
возвращает логическое значение, тогда как touchUp
является недействительным. Из-за этого вы не можете отменить событие «подправить». Однако вы можете «отменить» событие «приземления», вернув true. Я говорю «отмена», потому что на самом деле это не отменяет, а просто сообщает реализации, что вы сейчас обрабатываете события «касания» и «касания».
Использование метода touchDown
, вероятно, является лучшим вариантом. Я полагаю, что вы все еще сможете использовать touchUp
, но я не знаю, получат ли другие слушатели вызов touchUp
, если touchDown
вернул true (учитывая документацию, я не думаю, что они это сделают). Это то, что вы должны будете проверить сами.
Теперь, если вам действительно нужно отменить событие "touch up", сделайте следующее:
https://libgdx.badlogicgames.com/ci/nightlies/docs/api/com/badlogic/gdx/scenes/scene2d/Event.html#cancel--
Вы можете попробовать отменить мероприятие. Поскольку метод touchUp
в InputListener
передает объект InputEvent
, вы можете попробовать отменить его, используя inputEvent.cancel()