ViewGroup.onInterceptTouchEvent(e: MotionEvent)
позволяет перехватить ивент во ViewGroup
и не отправлять его вниз по иерархии в таргет-view.Значение, возвращаемое методом
onInterceptTouchEvent()
, проверяется в dispatchTouchEvent(). Если
onInterceptTouchEvent()
возвращает false
, то dispatchTouchEvent()
ищет дочернюю view для обработки ивента и передает ивент вниз по иерархии.Если
onInterceptTouchEvent()
возвращает true
, то ивент передается на обработку текущей ViewGroup
в метод onTouchEvent()
. При этом ивент все также передается по иерархии до таргет-view, но MotionEvent.getAction()
будет иметь значение ACTION_CANCEL
.