public interface

RecyclerView.OnItemTouchListener

 androidx.recyclerview.widget.RecyclerView.OnItemTouchListener

Subclasses:

RecyclerView.SimpleOnItemTouchListener

Overview

An OnItemTouchListener allows the application to intercept touch events in progress at the view hierarchy level of the RecyclerView before those touch events are considered for RecyclerView's own scrolling behavior.

This can be useful for applications that wish to implement various forms of gestural manipulation of item views within the RecyclerView. OnItemTouchListeners may intercept a touch interaction already in progress even if the RecyclerView is already handling that gesture stream itself for the purposes of scrolling.

Summary

Methods
public booleanonInterceptTouchEvent(RecyclerView rv, MotionEvent e)

Silently observe and/or take over touch events sent to the RecyclerView before they are handled by either the RecyclerView itself or its child views.

public voidonRequestDisallowInterceptTouchEvent(boolean disallowIntercept)

Called when a child of RecyclerView does not want RecyclerView and its ancestors to intercept touch events with ViewGroup.

public voidonTouchEvent(RecyclerView rv, MotionEvent e)

Process a touch event as part of a gesture that was claimed by returning true from a previous call to RecyclerView.OnItemTouchListener.onInterceptTouchEvent(RecyclerView, MotionEvent).

Methods

public boolean onInterceptTouchEvent(RecyclerView rv, MotionEvent e)

Silently observe and/or take over touch events sent to the RecyclerView before they are handled by either the RecyclerView itself or its child views.

The onInterceptTouchEvent methods of each attached OnItemTouchListener will be run in the order in which each listener was added, before any other touch processing by the RecyclerView itself or child views occurs.

Parameters:

rv: The RecyclerView whose scroll state has changed.
e: MotionEvent describing the touch event. All coordinates are in the RecyclerView's coordinate system.

Returns:

true if this OnItemTouchListener wishes to begin intercepting touch events, false to continue with the current behavior and continue observing future events in the gesture.

public void onTouchEvent(RecyclerView rv, MotionEvent e)

Process a touch event as part of a gesture that was claimed by returning true from a previous call to RecyclerView.OnItemTouchListener.onInterceptTouchEvent(RecyclerView, MotionEvent).

Parameters:

rv: The RecyclerView whose scroll state has changed.
e: MotionEvent describing the touch event. All coordinates are in the RecyclerView's coordinate system.

public void onRequestDisallowInterceptTouchEvent(boolean disallowIntercept)

Called when a child of RecyclerView does not want RecyclerView and its ancestors to intercept touch events with ViewGroup.

Parameters:

disallowIntercept: True if the child does not want the parent to intercept touch events.

See also: