Android APIs
public static abstract class

RecyclerView.ViewCacheExtension

extends Object
java.lang.Object
   ↳ android.support.v7.widget.RecyclerView.ViewCacheExtension

Class Overview

ViewCacheExtension is a helper class to provide an additional layer of view caching that can ben controlled by the developer.

When getViewForPosition(int) is called, Recycler checks attached scrap and first level cache to find a matching View. If it cannot find a suitable View, Recycler will call the getViewForPositionAndType(Recycler, int, int) before checking RecyclerView.RecycledViewPool.

Note that, Recycler never sends Views to this method to be cached. It is developers responsibility to decide whether they want to keep their Views in this custom cache or let the default recycling policy handle it.

Summary

Public Constructors
RecyclerView.ViewCacheExtension()
Public Methods
abstract View getViewForPositionAndType(RecyclerView.Recycler recycler, int position, int type)
Returns a View that can be binded to the given Adapter position.
[Expand]
Inherited Methods
From class java.lang.Object

Public Constructors

public RecyclerView.ViewCacheExtension ()

Public Methods

public abstract View getViewForPositionAndType (RecyclerView.Recycler recycler, int position, int type)

Returns a View that can be binded to the given Adapter position.

This method should not create a new View. Instead, it is expected to return an already created View that can be re-used for the given type and position. If the View is marked as ignored, it should first call stopIgnoringView(View) before returning the View.

RecyclerView will re-bind the returned View to the position if necessary.

Parameters
recycler The Recycler that can be used to bind the View
position The adapter position
type The type of the View, defined by adapter
Returns
  • A View that is bound to the given position or NULL if there is no View to re-use
See Also