RecyclerView.OnItemTouchListener

interface RecyclerView.OnItemTouchListener

Known direct subclasses
RecyclerView.SimpleOnItemTouchListener

An implementation of RecyclerView.OnItemTouchListener that has empty method bodies and default return values.


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

Public functions

Boolean

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.

Unit

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

Unit

Process a touch event as part of a gesture that was claimed by returning true from a previous call to onInterceptTouchEvent.

Public functions

onInterceptTouchEvent

Added in 1.0.0
fun onInterceptTouchEvent(rv: RecyclerView, e: MotionEvent): Boolean

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: RecyclerView

The RecyclerView whose scroll state has changed.

e: MotionEvent

MotionEvent describing the touch event. All coordinates are in the RecyclerView's coordinate system.

Returns
Boolean

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.

onRequestDisallowInterceptTouchEvent

Added in 1.0.0
fun onRequestDisallowInterceptTouchEvent(disallowIntercept: Boolean): Unit

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

Parameters
disallowIntercept: Boolean

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

onTouchEvent

Added in 1.0.0
fun onTouchEvent(rv: RecyclerView, e: MotionEvent): Unit

Process a touch event as part of a gesture that was claimed by returning true from a previous call to onInterceptTouchEvent.

Parameters
rv: RecyclerView

The RecyclerView whose scroll state has changed.

e: MotionEvent

MotionEvent describing the touch event. All coordinates are in the RecyclerView's coordinate system.