added in version 1.0.0
belongs to Maven artifact androidx.recyclerview:recyclerview:1.0.0-beta01

DividerItemDecoration

public class DividerItemDecoration
extends RecyclerView.ItemDecoration

java.lang.Object
   ↳ androidx.recyclerview.widget.RecyclerView.ItemDecoration
     ↳ androidx.recyclerview.widget.DividerItemDecoration


DividerItemDecoration is a RecyclerView.ItemDecoration that can be used as a divider between items of a LinearLayoutManager. It supports both HORIZONTAL and VERTICAL orientations.

     mDividerItemDecoration = new DividerItemDecoration(recyclerView.getContext(),
             mLayoutManager.getOrientation());
     recyclerView.addItemDecoration(mDividerItemDecoration);
 

Summary

Constants

int HORIZONTAL

int VERTICAL

Public constructors

DividerItemDecoration(Context context, int orientation)

Creates a divider RecyclerView.ItemDecoration that can be used with a LinearLayoutManager.

Public methods

void getItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state)

Retrieve any offsets for the given item.

void onDraw(Canvas c, RecyclerView parent, RecyclerView.State state)

Draw any appropriate decorations into the Canvas supplied to the RecyclerView.

void setDrawable(Drawable drawable)

Sets the Drawable for this divider.

void setOrientation(int orientation)

Sets the orientation for this divider.

Inherited methods

Constants

HORIZONTAL

added in version 1.0.0
public static final int HORIZONTAL

Constant Value: 0 (0x00000000)

VERTICAL

added in version 1.0.0
public static final int VERTICAL

Constant Value: 1 (0x00000001)

Public constructors

DividerItemDecoration

added in version 1.0.0
public DividerItemDecoration (Context context, 
                int orientation)

Creates a divider RecyclerView.ItemDecoration that can be used with a LinearLayoutManager.

Parameters
context Context: Current context, it will be used to access resources.

orientation int: Divider orientation. Should be HORIZONTAL or VERTICAL.

Public methods

getItemOffsets

added in version 1.0.0
public void getItemOffsets (Rect outRect, 
                View view, 
                RecyclerView parent, 
                RecyclerView.State state)

Retrieve any offsets for the given item. Each field of outRect specifies the number of pixels that the item view should be inset by, similar to padding or margin. The default implementation sets the bounds of outRect to 0 and returns.

If this ItemDecoration does not affect the positioning of item views, it should set all four fields of outRect (left, top, right, bottom) to zero before returning.

If you need to access Adapter for additional data, you can call RecyclerView.getChildAdapterPosition(View) to get the adapter position of the View.

Parameters
outRect Rect: Rect to receive the output.

view View: The child view to decorate

parent RecyclerView: RecyclerView this ItemDecoration is decorating

state RecyclerView.State: The current state of RecyclerView.

onDraw

added in version 1.0.0
public void onDraw (Canvas c, 
                RecyclerView parent, 
                RecyclerView.State state)

Draw any appropriate decorations into the Canvas supplied to the RecyclerView. Any content drawn by this method will be drawn before the item views are drawn, and will thus appear underneath the views.

Parameters
c Canvas: Canvas to draw into

parent RecyclerView: RecyclerView this ItemDecoration is drawing into

state RecyclerView.State: The current state of RecyclerView

setDrawable

added in version 1.0.0
public void setDrawable (Drawable drawable)

Sets the Drawable for this divider.

Parameters
drawable Drawable: Drawable that should be used as a divider.

setOrientation

added in version 1.0.0
public void setOrientation (int orientation)

Sets the orientation for this divider. This should be called if RecyclerView.LayoutManager changes orientation.

Parameters
orientation int: HORIZONTAL or VERTICAL