public final class

RecyclerViewActions

extends Object
java.lang.Object
   ↳ android.support.test.espresso.contrib.RecyclerViewActions

Class Overview

ViewActions to interact RecyclerView. RecyclerView works differently than AdapterView. In fact, RecyclerView is not an AdapterView anymore, hence it can't be used in combination with onData(Matcher).

To use ViewActions in this class use onView(Matcher) with a Matcher that matches your RecyclerView, then perform a ViewAction from this class.

Summary

Nested Classes
interface RecyclerViewActions.PositionableRecyclerViewAction Most RecyclerViewActions are given a matcher to select a particular view / viewholder within the RecyclerView. 
Public Methods
static <VH extends RecyclerView.ViewHolder> RecyclerViewActions.PositionableRecyclerViewAction actionOnHolderItem(Matcher<VH> viewHolderMatcher, ViewAction viewAction)
Performs a ViewAction on a view matched by viewHolderMatcher.
static <VH extends RecyclerView.ViewHolder> RecyclerViewActions.PositionableRecyclerViewAction actionOnItem(Matcher<View> itemViewMatcher, ViewAction viewAction)
Performs a ViewAction on a view matched by viewHolderMatcher.
static <VH extends RecyclerView.ViewHolder> ViewAction actionOnItemAtPosition(int position, ViewAction viewAction)
Performs a ViewAction on a view at position.
static <VH extends RecyclerView.ViewHolder> RecyclerViewActions.PositionableRecyclerViewAction scrollTo(Matcher<View> itemViewMatcher)
Returns a ViewAction which scrolls RecyclerView to the view matched by itemViewMatcher.
static <VH extends RecyclerView.ViewHolder> RecyclerViewActions.PositionableRecyclerViewAction scrollToHolder(Matcher<VH> viewHolderMatcher)
Returns a ViewAction which scrolls RecyclerView to the view matched by viewHolderMatcher.
static <VH extends RecyclerView.ViewHolder> ViewAction scrollToPosition(int position)
Returns a ViewAction which scrolls RecyclerView to a position.
[Expand]
Inherited Methods
From class java.lang.Object

Public Methods

public static RecyclerViewActions.PositionableRecyclerViewAction actionOnHolderItem (Matcher<VH> viewHolderMatcher, ViewAction viewAction)

Performs a ViewAction on a view matched by viewHolderMatcher.

  1. Scroll Recycler View to the view matched by itemViewMatcher
  2. Perform an action on the matched view
Note: actionOnItem method is not overloaded, method overloading with generic parameters is not possible.

Parameters
viewHolderMatcher a Matcher that matchesan item view holder in RecyclerView
viewAction the action that is performed on the view matched by viewHolderMatcher
Throws
PerformException if there are more than one items matching given viewHolderMatcher.

public static RecyclerViewActions.PositionableRecyclerViewAction actionOnItem (Matcher<View> itemViewMatcher, ViewAction viewAction)

Performs a ViewAction on a view matched by viewHolderMatcher.

  1. Scroll Recycler View to the view matched by itemViewMatcher
  2. Perform an action on the matched view

Parameters
itemViewMatcher a Matcher that matches an item view in RecyclerView
viewAction the action that is performed on the view matched by viewHolderMatcher
Throws
PerformException if there are more than one items matching given viewHolderMatcher.

public static ViewAction actionOnItemAtPosition (int position, ViewAction viewAction)

Performs a ViewAction on a view at position.

  1. Scroll Recycler View to position
  2. Perform an action on the view at position

Parameters
position position of a view in RecyclerView
viewAction the action that is performed on the view matched by itemViewMatcher

public static RecyclerViewActions.PositionableRecyclerViewAction scrollTo (Matcher<View> itemViewMatcher)

Returns a ViewAction which scrolls RecyclerView to the view matched by itemViewMatcher.

This approach uses RecyclerView.ViewHolders to find the target view. It will create one ViewHolder per item type and bind adapter data to the ViewHolder. If the itemViewMatcher matches a ViewHolder the current position of the View is used to perform a scrollToPosition(int).

Parameters
itemViewMatcher a Matcher that matches an item view in RecyclerView
Throws
PerformException if there are more than one items matching given viewHolderMatcher.

public static RecyclerViewActions.PositionableRecyclerViewAction scrollToHolder (Matcher<VH> viewHolderMatcher)

Returns a ViewAction which scrolls RecyclerView to the view matched by viewHolderMatcher.

This approach uses RecyclerView.ViewHolders to find the target view. It will create one ViewHolder per item type and bind adapter data to the ViewHolder. If the itemViewMatcher matches a ViewHolder the current position of the View is used to perform a scrollToPosition(int). Note: scrollTo method is not overloaded, method overloading with generic parameters is not possible.

Parameters
viewHolderMatcher a Matcher that matches an item view holder in RecyclerView
Throws
PerformException if there are more than one items matching given viewHolderMatcher.

public static ViewAction scrollToPosition (int position)

Returns a ViewAction which scrolls RecyclerView to a position.

Parameters
position the position of the view to scroll to