Как поступают события Android touch?

Я не спрашиваю, как обрабатывать сенсорные события, но что происходит за кулисами? Если есть несколько вложенных виджетов, в каком порядке они видят события? Имеет ли разработчик какой-либо контроль над этим? В идеале я хотел бы получить документ по этому вопросу.

С точки зрения деятельности:

Сначала события Touch доставляются в Activity.dispatchTouchEvent. Здесь вы можете поймать их в первую очередь.

Здесь они отправляются в Window, где они пересекают иерархию View, в том порядке, в котором виджеты, которые нарисованы последними (поверх других виджетов), имеют возможность обработать touch в View.onTouchEvent. Если какой-либо вид возвращает true в onTouchEvent, тогда обход останавливается, а другие представления не получают события касания.

Наконец, если View не использует Touch, он доставляется в Activity.onTouchEvent.

Это все, что вам нужно. И логично, что то, что вы видите нарисованным поверх чего-то другого, имеет возможность обработать событие касания перед чем-то, что находится под ним.