Другой подход, который вы можете использовать, - это IOnSceneTouchListener
с методом onSceneTouchEvent
. Вы можете получить X & Y из параметра pTouchEvent
и проверить, содержит ли его какой-либо спрайт.
Теперь, если вы не знали, у каждой сущности есть список детей (а ваша сцена - сущность).
Когда сущность рисует сама, она также вызывает методы рисования дочерних элементов. Методы рисования детей вызываются от первого дочернего метода до последнего (как их порядок в списке); Поэтому первый ребенок в списке рисуется первым. Последний рисуется последним. Так что последний всегда будет перекрывать любые другие объекты, на которые он опирается.
Итак, перебираем список детей сцены от последнего до первого. Если какой-либо спрайт содержит точку касания, пусть он обрабатывает событие и возвращает true , чтобы сообщить, что вы использовали событие.