OrientationHelper

public abstract class OrientationHelper
extends Object

java.lang.Object
   ↳ androidx.recyclerview.widget.OrientationHelper


Helper class for LayoutManagers to abstract measurements depending on the View's orientation.

It is developed to easily support vertical and horizontal orientations in a LayoutManager but can also be used to abstract calls around view bounds and child measurements with margins and decorations.

Summary

Constants

int HORIZONTAL

int VERTICAL

Fields

protected final RecyclerView.LayoutManager mLayoutManager

Public methods

static OrientationHelper createHorizontalHelper(RecyclerView.LayoutManager layoutManager)

Creates a horizontal OrientationHelper for the given LayoutManager.

static OrientationHelper createOrientationHelper(RecyclerView.LayoutManager layoutManager, int orientation)

Creates an OrientationHelper for the given LayoutManager and orientation.

static OrientationHelper createVerticalHelper(RecyclerView.LayoutManager layoutManager)

Creates a vertical OrientationHelper for the given LayoutManager.

abstract int getDecoratedEnd(View view)

Returns the end of the view including its decoration and margin.

abstract int getDecoratedMeasurement(View view)

Returns the space occupied by this View in the current orientation including decorations and margins.

abstract int getDecoratedMeasurementInOther(View view)

Returns the space occupied by this View in the perpendicular orientation including decorations and margins.

abstract int getDecoratedStart(View view)

Returns the start of the view including its decoration and margin.

abstract int getEnd()

Returns the end position of the layout without taking padding into account.

abstract int getEndAfterPadding()

Returns the end position of the layout after the end padding is removed.

abstract int getEndPadding()

Returns the padding at the end of the layout.

RecyclerView.LayoutManager getLayoutManager()

Returns the LayoutManager that is associated with this OrientationHelper.

abstract int getMode()

Returns the MeasureSpec mode for the current orientation from the LayoutManager.

abstract int getModeInOther()

Returns the MeasureSpec mode for the perpendicular orientation from the LayoutManager.

abstract int getStartAfterPadding()

Returns the start position of the layout after the start padding is added.

abstract int getTotalSpace()

Returns the total space to layout.

int getTotalSpaceChange()

Returns the layout space change between the previous layout pass and current layout pass.

abstract int getTransformedEndWithDecoration(View view)

Returns the end of the View after its matrix transformations are applied to its layout position.

abstract int getTransformedStartWithDecoration(View view)

Returns the start of the View after its matrix transformations are applied to its layout position.

abstract void offsetChild(View view, int offset)

Offsets the child in this orientation.

abstract void offsetChildren(int amount)

Offsets all children's positions by the given amount.

void onLayoutComplete()

Call this method after onLayout method is complete if state is NOT pre-layout.

Inherited methods

Constants

HORIZONTAL

public static final int HORIZONTAL

Constant Value: 0 (0x00000000)

VERTICAL

public static final int VERTICAL

Constant Value: 1 (0x00000001)

Fields

mLayoutManager

protected final RecyclerView.LayoutManager mLayoutManager