public static final class BandPredicate.NonDraggableArea
extends BandPredicate

   ↳ androidx.recyclerview.selection.BandPredicate
     ↳ androidx.recyclerview.selection.BandPredicate.NonDraggableArea

A BandPredicate that allows initiation of band selection in any area that is not draggable as determined by consulting ItemDetailsLookup.ItemDetails.inDragRegion(MotionEvent). By default empty areas (those with a position that maps to RecyclerView.NO_POSITION are considered non-draggable.

Use this implementation in order to permit band selection in otherwise empty areas of a View. This is useful especially in list layouts where there is no empty space surrounding the list items, and individual list items may contain extra white space (like in a list of varying length words).


Public constructors

NonDraggableArea(RecyclerView recyclerView, ItemDetailsLookup<?> detailsLookup)

Creates a new instance.

Public methods

boolean canInitiate(MotionEvent e)

Inherited methods

Public constructors


public NonDraggableArea (RecyclerView recyclerView, 
                ItemDetailsLookup<?> detailsLookup)

Creates a new instance.

recyclerView RecyclerView: the owner RecyclerView

detailsLookup ItemDetailsLookup: provides access to item details.

Public methods


public boolean canInitiate (MotionEvent e)

e MotionEvent

boolean true if band selection can be initiated in response to the MotionEvent.