# AbstractMediaItemPresenter

added in[version 24.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  
belongs to Maven artifact com.android.support:leanback-v17:28.0.0-alpha1  
Summary:[Nested Classes](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#nestedclasses)\|[Constants](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#constants)\|[Inherited Constants](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#inhconstants)\|[Ctors](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#pubctors)\|[Methods](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#pubmethods)\|[Protected Methods](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#promethods)\|[Inherited Methods](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#inhmethods)\|[\[Expand All\]](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#)  

# AbstractMediaItemPresenter

| This package is part of the Android[support library](https://developer.android.com/topic/libraries/support-library)which is no longer maintained. The support library has been superseded by[AndroidX](https://developer.android.com/jetpack/androidx)which is part of[Jetpack](https://developer.android.com/jetpack). We recommend using the AndroidX libraries in all new projects. You should also consider[migrating](https://developer.android.com/jetpack/androidx/migrate)existing projects to AndroidX. To find the AndroidX class that maps to this deprecated class, see the AndroidX support library[class mappings](https://developer.android.com/jetpack/androidx/migrate/class-mappings).

`
public


abstract
class
AbstractMediaItemPresenter
`  
`


``


``

extends `[RowPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter)`


``


`

|---|---|---|----------------------------------------------------------------|
| java.lang.Object                                                        ||||
| ↳ | [android.support.v17.leanback.widget.Presenter](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter) |||
|   | ↳ | [android.support.v17.leanback.widget.RowPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter) ||
|   |   | ↳ | android.support.v17.leanback.widget.AbstractMediaItemPresenter |

<br />

*** ** * ** ***

Abstract[Presenter](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter)class for rendering media items in a playlist format. Media item data provided for this presenter can implement the interface[MultiActionsProvider](https://developer.android.com/reference/android/support/v17/leanback/widget/MultiActionsProvider), if the media rows wish to contain custom actions. Media items in the playlist are arranged as a vertical list with each row holding each media item's details provided by the user of this class and a set of optional custom actions. Each media item's details and actions are separately focusable. The appearance of each one of the media row components can be controlled through setting theme's attributes. Each media item row provides a view flipper for switching between different views depending on the playback state. A default layout is provided by this presenter for rendering different playback states, or a custom layout can be provided by the user by overriding the playbackMediaItemNumberViewFlipperLayout attribute in the currently specified theme. Subclasses should also override[getMediaPlayState(Object)](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#getMediaPlayState(java.lang.Object))to provide the current play state of their media item model in case they wish to use different views depending on the playback state. The presenter can optionally provide line separators between media rows by setting[setHasMediaRowSeparator(boolean)](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#setHasMediaRowSeparator(boolean))to true.

Subclasses must override[onBindMediaDetails(AbstractMediaItemPresenter.ViewHolder, Object)](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#onBindMediaDetails(android.support.v17.leanback.widget.AbstractMediaItemPresenter.ViewHolder, java.lang.Object))to implement their media item model data binding to each row view.

The[OnItemViewClickedListener](https://developer.android.com/reference/android/support/v17/leanback/widget/OnItemViewClickedListener)and[OnItemViewSelectedListener](https://developer.android.com/reference/android/support/v17/leanback/widget/OnItemViewSelectedListener)can be used in the same fashion to handle selection or click events on either of media details or each individual action views.

[AbstractMediaListHeaderPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaListHeaderPresenter)can be used in conjunction with this presenter in order to display a playlist with a header view.

<br />

## Summary

|                                                                                                                                                        ### Nested classes                                                                                                                                                        ||
|----------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` class` | [AbstractMediaItemPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter.ViewHolder) The ViewHolder for the[AbstractMediaItemPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter). |

|                                                                                                         ### Constants                                                                                                          ||
|-------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `int` | [PLAY_STATE_INITIAL](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#PLAY_STATE_INITIAL) Indicating that the media item is currently neither playing nor paused. |
| `int` | [PLAY_STATE_PAUSED](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#PLAY_STATE_PAUSED) Indicating that the media item is currently paused.                       |
| `int` | [PLAY_STATE_PLAYING](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#PLAY_STATE_PLAYING) Indicating that the media item is currently playing                     |

|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  ### Inherited constants                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#)From class` `[android.support.v17.leanback.widget.RowPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter)` ` |-------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | `int` | [SYNC_ACTIVATED_CUSTOM](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#SYNC_ACTIVATED_CUSTOM) Don't synchronize row view activated status with selected status or expanded status, application will do its own through[setActivated(boolean)](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter.ViewHolder#setActivated(boolean)). | | `int` | [SYNC_ACTIVATED_TO_EXPANDED](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#SYNC_ACTIVATED_TO_EXPANDED) Synchronizes row view's activated status to expand status of the row view holder.                                                                                                                                                                                 | | `int` | [SYNC_ACTIVATED_TO_EXPANDED_AND_SELECTED](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#SYNC_ACTIVATED_TO_EXPANDED_AND_SELECTED) Sets the row view's activated status to true when both expand and selected are true.                                                                                                                                                    | | `int` | [SYNC_ACTIVATED_TO_SELECTED](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#SYNC_ACTIVATED_TO_SELECTED) Synchronizes row view's activated status to selected status of the row view holder.                                                                                                                                                                               | |

|                                                                                                                  ### Public constructors                                                                                                                   ||
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---|
| ` `[AbstractMediaItemPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#AbstractMediaItemPresenter())`() ` Constructor used for creating an abstract media item presenter.               |
| ` `[AbstractMediaItemPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#AbstractMediaItemPresenter(int))`(int themeId) ` Constructor used for creating an abstract media item presenter. |

|                                                                                                                                                                                                                                                                                         ### Public methods                                                                                                                                                                                                                                                                                          ||
|-------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` `[Presenter](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter) | ` `[getActionPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#getActionPresenter())`() ` Return the presenter used to render a media item row actions.                                                                                                                                                                                                                                                                      |
| ` int`                                                                                                | ` `[getThemeId](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#getThemeId())`() ` Return The resource id of the theme that defines attributes controlling the appearance of different widgets in a media item row.                                                                                                                                                                                                                   |
| ` boolean`                                                                                            | ` `[hasMediaRowSeparator](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#hasMediaRowSeparator())`() `                                                                                                                                                                                                                                                                                                                                |
| ` boolean`                                                                                            | ` `[isUsingDefaultSelectEffect](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#isUsingDefaultSelectEffect())`() ` Returns true if this RowPresenter is using the default dimming effect.                                                                                                                                                                                                                                             |
| ` void`                                                                                               | ` `[onBindMediaPlayState](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#onBindMediaPlayState(android.support.v17.leanback.widget.AbstractMediaItemPresenter.ViewHolder))`(`[AbstractMediaItemPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter.ViewHolder)` vh) ` Binds the media item number view to the appropriate play state view of the media item. |
| ` void`                                                                                               | ` `[onUnbindMediaPlayState](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#onUnbindMediaPlayState(android.support.v17.leanback.widget.AbstractMediaItemPresenter.ViewHolder))`(`[AbstractMediaItemPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter.ViewHolder)` vh) ` Called when the given ViewHolder wants to unbind the play state view.              |
| ` void`                                                                                               | ` `[setActionPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#setActionPresenter(android.support.v17.leanback.widget.Presenter))`(`[Presenter](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter)` actionPresenter) ` Sets the action presenter rendering each optional custom action within each media item row.                                                                       |
| ` void`                                                                                               | ` `[setBackgroundColor](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#setBackgroundColor(int))`(int color) ` Sets the background color for the row views within the playlist.                                                                                                                                                                                                                                                       |
| ` void`                                                                                               | ` `[setHasMediaRowSeparator](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#setHasMediaRowSeparator(boolean))`(boolean hasSeparator) ` Specifies whether a line separator should be used between media item rows.                                                                                                                                                                                                                    |
| ` void`                                                                                               | ` `[setThemeId](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#setThemeId(int))`(int themeId) ` Sets the theme used to style a media item row components.                                                                                                                                                                                                                                                                            |

|                                                                                                                                                                                                                                                                                                                                                                        ### Protected methods                                                                                                                                                                                                                                                                                                                                                                         ||
|-----------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` `[RowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter.ViewHolder) | ` `[createRowViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#createRowViewHolder(android.view.ViewGroup))`(`[ViewGroup](https://developer.android.com/reference/android/view/ViewGroup.html)` parent) ` Called to create a ViewHolder object for a Row.                                                                                                                                                                                                                                                                                                        |
| ` int`                                                                                                                            | ` `[getMediaPlayState](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#getMediaPlayState(java.lang.Object))`(Object item) ` Returns the current play state of the given media item.                                                                                                                                                                                                                                                                                                                                                                                        |
| ` boolean`                                                                                                                        | ` `[isClippingChildren](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#isClippingChildren())`() ` Returns true if the Row view should clip its children.                                                                                                                                                                                                                                                                                                                                                                                                                  |
| ` abstract void`                                                                                                                  | ` `[onBindMediaDetails](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#onBindMediaDetails(android.support.v17.leanback.widget.AbstractMediaItemPresenter.ViewHolder, java.lang.Object))`(`[AbstractMediaItemPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter.ViewHolder)` vh, Object item) ` Binds the media item details to their views provided by the[AbstractMediaItemPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter). |
| ` void`                                                                                                                           | ` `[onBindRowActions](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#onBindRowActions(android.support.v17.leanback.widget.AbstractMediaItemPresenter.ViewHolder))`(`[AbstractMediaItemPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter.ViewHolder)` vh) ` Binds the given media item object action to the given ViewHolder's action views.                                                                                                                                                    |
| ` void`                                                                                                                           | ` `[onBindRowViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#onBindRowViewHolder(android.support.v17.leanback.widget.RowPresenter.ViewHolder, java.lang.Object))`(`[RowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter.ViewHolder)` vh, Object item) ` Binds the given row object to the given ViewHolder.                                                                                                                                                                                      |
| ` void`                                                                                                                           | ` `[onUnbindMediaDetails](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#onUnbindMediaDetails(android.support.v17.leanback.widget.AbstractMediaItemPresenter.ViewHolder))`(`[AbstractMediaItemPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter.ViewHolder)` vh) ` Unbinds the media item details from their views provided by the[AbstractMediaItemPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter).                        |

| ### Inherited methods |
|-----------------------|---|
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#)From class` `[android.support.v17.leanback.widget.RowPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter)` ` |--------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ` abstract `[RowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter.ViewHolder) | ` `[createRowViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#createRowViewHolder(android.view.ViewGroup))`(`[ViewGroup](https://developer.android.com/reference/android/view/ViewGroup.html)` parent) ` Called to create a ViewHolder object for a Row.                                                                                                                                                                                                                                                                                                                                                         | | ` void`                                                                                                                                    | ` `[dispatchItemSelectedListener](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#dispatchItemSelectedListener(android.support.v17.leanback.widget.RowPresenter.ViewHolder, boolean))`(`[RowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter.ViewHolder)` vh, boolean selected) ` This method is only called from[onRowViewSelected(ViewHolder, boolean)](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#onRowViewSelected(android.support.v17.leanback.widget.RowPresenter.ViewHolder, boolean))onRowViewSelected. | | ` void`                                                                                                                                    | ` `[freeze](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#freeze(android.support.v17.leanback.widget.RowPresenter.ViewHolder, boolean))`(`[RowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter.ViewHolder)` holder, boolean freeze) ` Freezes/unfreezes the row, typically used when a transition starts/ends.                                                                                                                                                                                                                                              | | ` final `[RowHeaderPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/RowHeaderPresenter)              | ` `[getHeaderPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#getHeaderPresenter())`() ` Returns the Presenter used for rendering the header, or null if none has been set.                                                                                                                                                                                                                                                                                                                                                                                                                                       | | ` final `[RowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter.ViewHolder)    | ` `[getRowViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#getRowViewHolder(android.support.v17.leanback.widget.Presenter.ViewHolder))`(`[Presenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter.ViewHolder)` holder) ` Returns the[RowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter.ViewHolder)from the given RowPresenter ViewHolder.                                                                                                                                                    | | ` final boolean`                                                                                                                           | ` `[getSelectEffectEnabled](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#getSelectEffectEnabled())`() ` Returns true if the row selection effect is enabled.                                                                                                                                                                                                                                                                                                                                                                                                                                                             | | ` final float`                                                                                                                             | ` `[getSelectLevel](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#getSelectLevel(android.support.v17.leanback.widget.Presenter.ViewHolder))`(`[Presenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter.ViewHolder)` vh) ` Returns the current select level.                                                                                                                                                                                                                                                                                                           | | ` final int`                                                                                                                               | ` `[getSyncActivatePolicy](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#getSyncActivatePolicy())`() ` Returns the policy of updating row view activated status.                                                                                                                                                                                                                                                                                                                                                                                                                                                          | | ` void`                                                                                                                                    | ` `[initializeRowViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#initializeRowViewHolder(android.support.v17.leanback.widget.RowPresenter.ViewHolder))`(`[RowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter.ViewHolder)` vh) ` Called after a[RowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter.ViewHolder)is created for a Row.                                                                                                                                                | | ` boolean`                                                                                                                                 | ` `[isClippingChildren](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#isClippingChildren())`() ` Returns true if the Row view should clip its children.                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | | ` boolean`                                                                                                                                 | ` `[isUsingDefaultSelectEffect](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#isUsingDefaultSelectEffect())`() ` Returns true if this RowPresenter is using the default dimming effect.                                                                                                                                                                                                                                                                                                                                                                                                                                   | | ` void`                                                                                                                                    | ` `[onBindRowViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#onBindRowViewHolder(android.support.v17.leanback.widget.RowPresenter.ViewHolder, java.lang.Object))`(`[RowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter.ViewHolder)` vh, Object item) ` Binds the given row object to the given ViewHolder.                                                                                                                                                                                                                                       | | ` final void`                                                                                                                              | ` `[onBindViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#onBindViewHolder(android.support.v17.leanback.widget.Presenter.ViewHolder, java.lang.Object))`(`[Presenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter.ViewHolder)` viewHolder, Object item) ` Binds a[View](https://developer.android.com/reference/android/view/View.html)to an item.                                                                                                                                                                                                         | | ` final `[Presenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter.ViewHolder)          | ` `[onCreateViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#onCreateViewHolder(android.view.ViewGroup))`(`[ViewGroup](https://developer.android.com/reference/android/view/ViewGroup.html)` parent) ` Creates a new[View](https://developer.android.com/reference/android/view/View.html).                                                                                                                                                                                                                                                                                                                      | | ` void`                                                                                                                                    | ` `[onRowViewAttachedToWindow](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#onRowViewAttachedToWindow(android.support.v17.leanback.widget.RowPresenter.ViewHolder))`(`[RowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter.ViewHolder)` vh) ` Invoked when the row view is attached to the window.                                                                                                                                                                                                                                                         | | ` void`                                                                                                                                    | ` `[onRowViewDetachedFromWindow](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#onRowViewDetachedFromWindow(android.support.v17.leanback.widget.RowPresenter.ViewHolder))`(`[RowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter.ViewHolder)` vh) ` Invoked when the row view is detached from the window.                                                                                                                                                                                                                                                   | | ` void`                                                                                                                                    | ` `[onRowViewExpanded](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#onRowViewExpanded(android.support.v17.leanback.widget.RowPresenter.ViewHolder, boolean))`(`[RowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter.ViewHolder)` vh, boolean expanded) ` Called when the row view's expanded state changes.                                                                                                                                                                                                                                                | | ` void`                                                                                                                                    | ` `[onRowViewSelected](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#onRowViewSelected(android.support.v17.leanback.widget.RowPresenter.ViewHolder, boolean))`(`[RowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter.ViewHolder)` vh, boolean selected) ` Called when the given row view changes selection state.                                                                                                                                                                                                                                           | | ` void`                                                                                                                                    | ` `[onSelectLevelChanged](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#onSelectLevelChanged(android.support.v17.leanback.widget.RowPresenter.ViewHolder))`(`[RowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter.ViewHolder)` vh) ` Callback when the select level changes.                                                                                                                                                                                                                                                                                | | ` void`                                                                                                                                    | ` `[onUnbindRowViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#onUnbindRowViewHolder(android.support.v17.leanback.widget.RowPresenter.ViewHolder))`(`[RowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter.ViewHolder)` vh) ` Unbinds the given ViewHolder.                                                                                                                                                                                                                                                                                        | | ` final void`                                                                                                                              | ` `[onUnbindViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#onUnbindViewHolder(android.support.v17.leanback.widget.Presenter.ViewHolder))`(`[Presenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter.ViewHolder)` viewHolder) ` Unbinds a[View](https://developer.android.com/reference/android/view/View.html)from an item.                                                                                                                                                                                                                                | | ` final void`                                                                                                                              | ` `[onViewAttachedToWindow](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#onViewAttachedToWindow(android.support.v17.leanback.widget.Presenter.ViewHolder))`(`[Presenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter.ViewHolder)` holder) ` Called when a view created by this presenter has been attached to a window.                                                                                                                                                                                                                                             | | ` final void`                                                                                                                              | ` `[onViewDetachedFromWindow](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#onViewDetachedFromWindow(android.support.v17.leanback.widget.Presenter.ViewHolder))`(`[Presenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter.ViewHolder)` holder) ` Called when a view created by this presenter has been detached from its window.                                                                                                                                                                                                                                     | | ` void`                                                                                                                                    | ` `[setEntranceTransitionState](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#setEntranceTransitionState(android.support.v17.leanback.widget.RowPresenter.ViewHolder, boolean))`(`[RowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter.ViewHolder)` holder, boolean afterEntrance) ` Changes the visibility of views.                                                                                                                                                                                                                                       | | ` final void`                                                                                                                              | ` `[setHeaderPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#setHeaderPresenter(android.support.v17.leanback.widget.RowHeaderPresenter))`(`[RowHeaderPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/RowHeaderPresenter)` headerPresenter) ` Sets the Presenter used for rendering the header.                                                                                                                                                                                                                                                                            | | ` final void`                                                                                                                              | ` `[setRowViewExpanded](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#setRowViewExpanded(android.support.v17.leanback.widget.Presenter.ViewHolder, boolean))`(`[Presenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter.ViewHolder)` holder, boolean expanded) ` Sets the expanded state of a Row view.                                                                                                                                                                                                                                                               | | ` final void`                                                                                                                              | ` `[setRowViewSelected](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#setRowViewSelected(android.support.v17.leanback.widget.Presenter.ViewHolder, boolean))`(`[Presenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter.ViewHolder)` holder, boolean selected) ` Sets the selected state of a Row view.                                                                                                                                                                                                                                                               | | ` final void`                                                                                                                              | ` `[setSelectEffectEnabled](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#setSelectEffectEnabled(boolean))`(boolean applyDimOnSelect) ` Enables or disables the row selection effect.                                                                                                                                                                                                                                                                                                                                                                                                                                     | | ` final void`                                                                                                                              | ` `[setSelectLevel](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#setSelectLevel(android.support.v17.leanback.widget.Presenter.ViewHolder, float))`(`[Presenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter.ViewHolder)` vh, float level) ` Sets the current select level to a value between 0 (unselected) and 1 (selected).                                                                                                                                                                                                                                       | | ` final void`                                                                                                                              | ` `[setSyncActivatePolicy](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#setSyncActivatePolicy(int))`(int syncActivatePolicy) ` Sets the policy of updating row view activated status.                                                                                                                                                                                                                                                                                                                                                                                                                                    | ||
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#)From class` `[android.support.v17.leanback.widget.Presenter](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter)` ` |--------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ` static void`                                                                                                                       | ` `[cancelAnimationsRecursive](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter#cancelAnimationsRecursive(android.view.View))`(`[View](https://developer.android.com/reference/android/view/View.html)` view) ` Utility method for removing all running animations on a view.                                                                                                                                                                                                                                | | ` final Object`                                                                                                                      | ` `[getFacet](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter#getFacet(java.lang.Class<?>))`(Class<?> facetClass) ` Queries optional implemented facet.                                                                                                                                                                                                                                                                                                                                                     | | ` abstract void`                                                                                                                     | ` `[onBindViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter#onBindViewHolder(android.support.v17.leanback.widget.Presenter.ViewHolder, java.lang.Object))`(`[Presenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter.ViewHolder)` viewHolder, Object item) ` Binds a[View](https://developer.android.com/reference/android/view/View.html)to an item.                                                                                         | | ` void`                                                                                                                              | ` `[onBindViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter#onBindViewHolder(android.support.v17.leanback.widget.Presenter.ViewHolder, java.lang.Object, java.util.List<java.lang.Object>))`(`[Presenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter.ViewHolder)` viewHolder, Object item, List<Object> payloads) ` Binds a[View](https://developer.android.com/reference/android/view/View.html)to an item with a list of payloads.        | | ` abstract `[Presenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter.ViewHolder) | ` `[onCreateViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter#onCreateViewHolder(android.view.ViewGroup))`(`[ViewGroup](https://developer.android.com/reference/android/view/ViewGroup.html)` parent) ` Creates a new[View](https://developer.android.com/reference/android/view/View.html).                                                                                                                                                                                                      | | ` abstract void`                                                                                                                     | ` `[onUnbindViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter#onUnbindViewHolder(android.support.v17.leanback.widget.Presenter.ViewHolder))`(`[Presenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter.ViewHolder)` viewHolder) ` Unbinds a[View](https://developer.android.com/reference/android/view/View.html)from an item.                                                                                                                | | ` void`                                                                                                                              | ` `[onViewAttachedToWindow](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter#onViewAttachedToWindow(android.support.v17.leanback.widget.Presenter.ViewHolder))`(`[Presenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter.ViewHolder)` holder) ` Called when a view created by this presenter has been attached to a window.                                                                                                                             | | ` void`                                                                                                                              | ` `[onViewDetachedFromWindow](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter#onViewDetachedFromWindow(android.support.v17.leanback.widget.Presenter.ViewHolder))`(`[Presenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter.ViewHolder)` holder) ` Called when a view created by this presenter has been detached from its window.                                                                                                                     | | ` final void`                                                                                                                        | ` `[setFacet](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter#setFacet(java.lang.Class<?>, java.lang.Object))`(Class<?> facetClass, Object facetImpl) ` Sets dynamic implemented facet in addition to basic Presenter functions.                                                                                                                                                                                                                                                                            | | ` void`                                                                                                                              | ` `[setOnClickListener](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter#setOnClickListener(android.support.v17.leanback.widget.Presenter.ViewHolder, android.view.View.OnClickListener))`(`[Presenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter.ViewHolder)` holder, `[View.OnClickListener](https://developer.android.com/reference/android/view/View.OnClickListener.html)` listener) ` Called to set a click listener for the given view holder. | ||
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#)From class` java.lang.Object ` |-------------------|-------------------------------| | ` Object`         | ` clone() `                   | | ` boolean`        | ` equals(Object arg0) `       | | ` void`           | ` finalize() `                | | ` final Class<?>` | ` getClass() `                | | ` int`            | ` hashCode() `                | | ` final void`     | ` notify() `                  | | ` final void`     | ` notifyAll() `               | | ` String`         | ` toString() `                | | ` final void`     | ` wait(long arg0, int arg1) ` | | ` final void`     | ` wait(long arg0) `           | | ` final void`     | ` wait() `                    | ||
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#)From interface` `[android.support.v17.leanback.widget.FacetProvider](https://developer.android.com/reference/android/support/v17/leanback/widget/FacetProvider)` ` |--------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ` abstract Object` | ` `[getFacet](https://developer.android.com/reference/android/support/v17/leanback/widget/FacetProvider#getFacet(java.lang.Class<?>))`(Class<?> facetClass) ` Queries optional implemented facet. | ||

## Constants

### PLAY_STATE_INITIAL

added in[version 25.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
int PLAY_STATE_INITIAL
```

Indicating that the media item is currently neither playing nor paused.

<br />

Constant Value: 0 (0x00000000)  

### PLAY_STATE_PAUSED

added in[version 25.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
int PLAY_STATE_PAUSED
```

Indicating that the media item is currently paused.

<br />

Constant Value: 1 (0x00000001)  

### PLAY_STATE_PLAYING

added in[version 25.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
int PLAY_STATE_PLAYING
```

Indicating that the media item is currently playing

<br />

Constant Value: 2 (0x00000002)

## Public constructors

### AbstractMediaItemPresenter

added in[version 24.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
AbstractMediaItemPresenter ()
```

Constructor used for creating an abstract media item presenter.

<br />

### AbstractMediaItemPresenter

added in[version 24.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
AbstractMediaItemPresenter (int themeId)
```

Constructor used for creating an abstract media item presenter.

<br />

|                                                                     Parameters                                                                     ||
|-----------|-----------------------------------------------------------------------------------------------------------------------------------------|
| `themeId` | `int`: The resource id of the theme that defines attributes controlling the appearance of different widgets in a media item row. <br /> |

## Public methods

### getActionPresenter

added in[version 24.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
Presenter getActionPresenter ()
```

Return the presenter used to render a media item row actions.

<br />

|                                                                              Returns                                                                              ||
|----------------------------------------------------------------------------------------------------|---------------------------------------------------------------|
| [Presenter](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter) | the presenter used to render a media item row actions. <br /> |

### getThemeId

added in[version 24.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
int getThemeId ()
```

Return The resource id of the theme that defines attributes controlling the appearance of different widgets in a media item row.

<br />

|                                                                 Returns                                                                 ||
|-------|----------------------------------------------------------------------------------------------------------------------------------|
| `int` | The resource id of the theme that defines attributes controlling the appearance of different widgets in a media item row. <br /> |

### hasMediaRowSeparator

added in[version 24.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
boolean hasMediaRowSeparator ()
```

<br />

<br />

|      Returns      ||
|-----------|--------|
| `boolean` | <br /> |

### isUsingDefaultSelectEffect

added in[version 24.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
boolean isUsingDefaultSelectEffect ()
```

Returns true if this RowPresenter is using the default dimming effect. A subclass may (most likely) return false and override[onSelectLevelChanged(ViewHolder)](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#onSelectLevelChanged(android.support.v17.leanback.widget.RowPresenter.ViewHolder)).

<br />

|      Returns      ||
|-----------|--------|
| `boolean` | <br /> |

### onBindMediaPlayState

added in[version 25.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
void onBindMediaPlayState (AbstractMediaItemPresenter.ViewHolder vh)
```

Binds the media item number view to the appropriate play state view of the media item. The play state of the media item is extracted by calling[getMediaPlayState(Object)](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter#getMediaPlayState(java.lang.Object))for the media item embedded within this view. This method triggers updating of the playback state UI if corresponding views are specified for the current playback state. By default, 3 views are provided for each playback state, or these views can be provided by the user.

<br />

|                      Parameters                      ||
|------|------------------------------------------------|
| `vh` | `AbstractMediaItemPresenter.ViewHolder` <br /> |

### onUnbindMediaPlayState

added in[version 25.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
void onUnbindMediaPlayState (AbstractMediaItemPresenter.ViewHolder vh)
```

Called when the given ViewHolder wants to unbind the play state view.

<br />

|                                      Parameters                                      ||
|------|--------------------------------------------------------------------------------|
| `vh` | `AbstractMediaItemPresenter.ViewHolder`: The ViewHolder to unbind from. <br /> |

### setActionPresenter

added in[version 24.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
void setActionPresenter (Presenter actionPresenter)
```

Sets the action presenter rendering each optional custom action within each media item row.

<br />

|                                               Parameters                                                ||
|-------------------|--------------------------------------------------------------------------------------|
| `actionPresenter` | `Presenter`: the presenter to be used for rendering a media item row actions. <br /> |

### setBackgroundColor

added in[version 24.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
void setBackgroundColor (int color)
```

Sets the background color for the row views within the playlist. If this is not set, a default color, defaultBrandColor, from theme is used. This defaultBrandColor defaults to android:attr/colorPrimary on v21, if it's specified.

<br />

|                                      Parameters                                       ||
|---------|------------------------------------------------------------------------------|
| `color` | `int`: The ARGB color used to set as the media list background color. <br /> |

### setHasMediaRowSeparator

added in[version 24.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
void setHasMediaRowSeparator (boolean hasSeparator)
```

Specifies whether a line separator should be used between media item rows.

<br />

|                                         Parameters                                          ||
|----------------|-----------------------------------------------------------------------------|
| `hasSeparator` | `boolean`: true if a separator should be displayed, false otherwise. <br /> |

### setThemeId

added in[version 24.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
void setThemeId (int themeId)
```

Sets the theme used to style a media item row components.

<br />

|                                                                     Parameters                                                                     ||
|-----------|-----------------------------------------------------------------------------------------------------------------------------------------|
| `themeId` | `int`: The resource id of the theme that defines attributes controlling the appearance of different widgets in a media item row. <br /> |

## Protected methods

### createRowViewHolder

added in[version 24.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
RowPresenter.ViewHolder createRowViewHolder (ViewGroup parent)
```

Called to create a ViewHolder object for a Row. Subclasses will override this method to return a different concrete ViewHolder object.

<br />

|                                Parameters                                ||
|----------|----------------------------------------------------------------|
| `parent` | `ViewGroup`: The parent View for the Row's view holder. <br /> |

|                                                                                 Returns                                                                                 ||
|--------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------|
| [RowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter.ViewHolder) | A ViewHolder for the Row's View. <br /> |

### getMediaPlayState

added in[version 25.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
int getMediaPlayState (Object item)
```

Returns the current play state of the given media item. By default, this method returns PLAY_STATE_INITIAL which causes the media item number[getMediaItemNameView()](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter.ViewHolder#getMediaItemNameView())to be displayed for different playback states. Users of this class should override this method in order to provide the play state of their custom media item data model.

<br />

|               Parameters                ||
|--------|---------------------------------|
| `item` | `Object`: The media item <br /> |

|                         Returns                         ||
|-------|--------------------------------------------------|
| `int` | The current play state of this media item <br /> |

### isClippingChildren

added in[version 24.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
boolean isClippingChildren ()
```

Returns true if the Row view should clip its children. The clipChildren flag is set on view in[initializeRowViewHolder(ViewHolder)](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#initializeRowViewHolder(android.support.v17.leanback.widget.RowPresenter.ViewHolder)). Note that Slide transition or explode transition need turn off clipChildren. Default value is false.

<br />

|      Returns      ||
|-----------|--------|
| `boolean` | <br /> |

### onBindMediaDetails

added in[version 24.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
void onBindMediaDetails (AbstractMediaItemPresenter.ViewHolder vh, 
                Object item)
```

Binds the media item details to their views provided by the[AbstractMediaItemPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter). This method is to be overridden by the users of this presenter. The subclasses of this presenter can access and bind individual views for either of the media item number, name, or duration (depending on whichever views are visible according to the providing theme attributes), by calling[getMediaItemNumberView()](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter.ViewHolder#getMediaItemNumberView()),[getMediaItemNameView()](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter.ViewHolder#getMediaItemNameView()), and[getMediaItemDurationView()](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter.ViewHolder#getMediaItemDurationView()), on the[AbstractMediaItemPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter.ViewHolder)provided as the argument`vh`of this presenter.

<br />

|                                                                                                      Parameters                                                                                                      ||
|--------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `vh`   | `AbstractMediaItemPresenter.ViewHolder`: The ViewHolder for this[AbstractMediaItemPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter). <br /> |
| `item` | `Object`: The media item row object being presented. <br />                                                                                                                                                  |

### onBindRowActions

added in[version 24.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
void onBindRowActions (AbstractMediaItemPresenter.ViewHolder vh)
```

Binds the given media item object action to the given ViewHolder's action views.

<br />

|                                      Parameters                                      ||
|------|--------------------------------------------------------------------------------|
| `vh` | `AbstractMediaItemPresenter.ViewHolder`: ViewHolder for the media item. <br /> |

### onBindRowViewHolder

added in[version 24.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
void onBindRowViewHolder (RowPresenter.ViewHolder vh, 
                Object item)
```

Binds the given row object to the given ViewHolder. Derived classes of[RowPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter)overriding[onBindRowViewHolder(ViewHolder, Object)](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter#onBindRowViewHolder(android.support.v17.leanback.widget.RowPresenter.ViewHolder, java.lang.Object))must call through the super class's implementation of this method.

<br />

|                Parameters                ||
|--------|----------------------------------|
| `vh`   | `RowPresenter.ViewHolder` <br /> |
| `item` | `Object` <br />                  |

### onUnbindMediaDetails

added in[version 24.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
void onUnbindMediaDetails (AbstractMediaItemPresenter.ViewHolder vh)
```

Unbinds the media item details from their views provided by the[AbstractMediaItemPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter). This method can be overridden by the subclasses of this presenter if required.

<br />

|                                    Parameters                                    ||
|------|----------------------------------------------------------------------------|
| `vh` | `AbstractMediaItemPresenter.ViewHolder`: ViewHolder to unbind from. <br /> |

-

  ## Interfaces

  - [BaseGridView.OnKeyInterceptListener](https://developer.android.com/reference/android/support/v17/leanback/widget/BaseGridView.OnKeyInterceptListener)
  - [BaseGridView.OnMotionInterceptListener](https://developer.android.com/reference/android/support/v17/leanback/widget/BaseGridView.OnMotionInterceptListener)
  - [BaseGridView.OnTouchInterceptListener](https://developer.android.com/reference/android/support/v17/leanback/widget/BaseGridView.OnTouchInterceptListener)
  - [BaseGridView.OnUnhandledKeyListener](https://developer.android.com/reference/android/support/v17/leanback/widget/BaseGridView.OnUnhandledKeyListener)
  - [BaseOnItemViewClickedListener](https://developer.android.com/reference/android/support/v17/leanback/widget/BaseOnItemViewClickedListener)
  - [BaseOnItemViewSelectedListener](https://developer.android.com/reference/android/support/v17/leanback/widget/BaseOnItemViewSelectedListener)
  - [BrowseFrameLayout.OnChildFocusListener](https://developer.android.com/reference/android/support/v17/leanback/widget/BrowseFrameLayout.OnChildFocusListener)
  - [BrowseFrameLayout.OnFocusSearchListener](https://developer.android.com/reference/android/support/v17/leanback/widget/BrowseFrameLayout.OnFocusSearchListener)
  - [FacetProvider](https://developer.android.com/reference/android/support/v17/leanback/widget/FacetProvider)
  - [FacetProviderAdapter](https://developer.android.com/reference/android/support/v17/leanback/widget/FacetProviderAdapter)
  - [FocusHighlight](https://developer.android.com/reference/android/support/v17/leanback/widget/FocusHighlight)
  - [FragmentAnimationProvider](https://developer.android.com/reference/android/support/v17/leanback/widget/FragmentAnimationProvider)
  - [ImeKeyMonitor](https://developer.android.com/reference/android/support/v17/leanback/widget/ImeKeyMonitor)
  - [ImeKeyMonitor.ImeKeyListener](https://developer.android.com/reference/android/support/v17/leanback/widget/ImeKeyMonitor.ImeKeyListener)
  - [MultiActionsProvider](https://developer.android.com/reference/android/support/v17/leanback/widget/MultiActionsProvider)
  - [OnActionClickedListener](https://developer.android.com/reference/android/support/v17/leanback/widget/OnActionClickedListener)
  - [OnChildLaidOutListener](https://developer.android.com/reference/android/support/v17/leanback/widget/OnChildLaidOutListener)
  - [OnChildSelectedListener](https://developer.android.com/reference/android/support/v17/leanback/widget/OnChildSelectedListener)
  - [OnItemViewClickedListener](https://developer.android.com/reference/android/support/v17/leanback/widget/OnItemViewClickedListener)
  - [OnItemViewSelectedListener](https://developer.android.com/reference/android/support/v17/leanback/widget/OnItemViewSelectedListener)
  - [PlaybackSeekUi](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackSeekUi)
  - [SearchBar.SearchBarListener](https://developer.android.com/reference/android/support/v17/leanback/widget/SearchBar.SearchBarListener)
  - [SearchBar.SearchBarPermissionListener](https://developer.android.com/reference/android/support/v17/leanback/widget/SearchBar.SearchBarPermissionListener)
  - [SearchEditText.OnKeyboardDismissListener](https://developer.android.com/reference/android/support/v17/leanback/widget/SearchEditText.OnKeyboardDismissListener)
  - [SpeechRecognitionCallback](https://developer.android.com/reference/android/support/v17/leanback/widget/SpeechRecognitionCallback)
  - [TitleViewAdapter.Provider](https://developer.android.com/reference/android/support/v17/leanback/widget/TitleViewAdapter.Provider)
  - [ViewHolderTask](https://developer.android.com/reference/android/support/v17/leanback/widget/ViewHolderTask)
-

  ## Classes

  - [AbstractDetailsDescriptionPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractDetailsDescriptionPresenter)
  - [AbstractDetailsDescriptionPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractDetailsDescriptionPresenter.ViewHolder)
  - [AbstractMediaItemPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter)
  - [AbstractMediaItemPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaItemPresenter.ViewHolder)
  - [AbstractMediaListHeaderPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaListHeaderPresenter)
  - [AbstractMediaListHeaderPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/AbstractMediaListHeaderPresenter.ViewHolder)
  - [Action](https://developer.android.com/reference/android/support/v17/leanback/widget/Action)
  - [ArrayObjectAdapter](https://developer.android.com/reference/android/support/v17/leanback/widget/ArrayObjectAdapter)
  - [BaseCardView](https://developer.android.com/reference/android/support/v17/leanback/widget/BaseCardView)
  - [BaseCardView.LayoutParams](https://developer.android.com/reference/android/support/v17/leanback/widget/BaseCardView.LayoutParams)
  - [BaseGridView](https://developer.android.com/reference/android/support/v17/leanback/widget/BaseGridView)
  - [BrowseFrameLayout](https://developer.android.com/reference/android/support/v17/leanback/widget/BrowseFrameLayout)
  - [ClassPresenterSelector](https://developer.android.com/reference/android/support/v17/leanback/widget/ClassPresenterSelector)
  - [ControlButtonPresenterSelector](https://developer.android.com/reference/android/support/v17/leanback/widget/ControlButtonPresenterSelector)
  - [CursorObjectAdapter](https://developer.android.com/reference/android/support/v17/leanback/widget/CursorObjectAdapter)
  - [DetailsOverviewLogoPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/DetailsOverviewLogoPresenter)
  - [DetailsOverviewLogoPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/DetailsOverviewLogoPresenter.ViewHolder)
  - [DetailsOverviewRow](https://developer.android.com/reference/android/support/v17/leanback/widget/DetailsOverviewRow)
  - [DetailsOverviewRow.Listener](https://developer.android.com/reference/android/support/v17/leanback/widget/DetailsOverviewRow.Listener)
  - [DetailsOverviewRowPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/DetailsOverviewRowPresenter)
  - [DetailsOverviewRowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/DetailsOverviewRowPresenter.ViewHolder)
  - [DetailsParallax](https://developer.android.com/reference/android/support/v17/leanback/widget/DetailsParallax)
  - [DiffCallback](https://developer.android.com/reference/android/support/v17/leanback/widget/DiffCallback)
  - [DividerPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/DividerPresenter)
  - [DividerRow](https://developer.android.com/reference/android/support/v17/leanback/widget/DividerRow)
  - [FocusHighlightHelper](https://developer.android.com/reference/android/support/v17/leanback/widget/FocusHighlightHelper)
  - [FullWidthDetailsOverviewRowPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/FullWidthDetailsOverviewRowPresenter)
  - [FullWidthDetailsOverviewRowPresenter.Listener](https://developer.android.com/reference/android/support/v17/leanback/widget/FullWidthDetailsOverviewRowPresenter.Listener)
  - [FullWidthDetailsOverviewRowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/FullWidthDetailsOverviewRowPresenter.ViewHolder)
  - [FullWidthDetailsOverviewRowPresenter.ViewHolder.DetailsOverviewRowListener](https://developer.android.com/reference/android/support/v17/leanback/widget/FullWidthDetailsOverviewRowPresenter.ViewHolder.DetailsOverviewRowListener)
  - [FullWidthDetailsOverviewSharedElementHelper](https://developer.android.com/reference/android/support/v17/leanback/widget/FullWidthDetailsOverviewSharedElementHelper)
  - [GuidanceStylist](https://developer.android.com/reference/android/support/v17/leanback/widget/GuidanceStylist)
  - [GuidanceStylist.Guidance](https://developer.android.com/reference/android/support/v17/leanback/widget/GuidanceStylist.Guidance)
  - [GuidedAction](https://developer.android.com/reference/android/support/v17/leanback/widget/GuidedAction)
  - [GuidedAction.Builder](https://developer.android.com/reference/android/support/v17/leanback/widget/GuidedAction.Builder)
  - [GuidedAction.BuilderBase](https://developer.android.com/reference/android/support/v17/leanback/widget/GuidedAction.BuilderBase)
  - [GuidedActionDiffCallback](https://developer.android.com/reference/android/support/v17/leanback/widget/GuidedActionDiffCallback)
  - [GuidedActionEditText](https://developer.android.com/reference/android/support/v17/leanback/widget/GuidedActionEditText)
  - [GuidedActionsStylist](https://developer.android.com/reference/android/support/v17/leanback/widget/GuidedActionsStylist)
  - [GuidedActionsStylist.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/GuidedActionsStylist.ViewHolder)
  - [GuidedDatePickerAction](https://developer.android.com/reference/android/support/v17/leanback/widget/GuidedDatePickerAction)
  - [GuidedDatePickerAction.Builder](https://developer.android.com/reference/android/support/v17/leanback/widget/GuidedDatePickerAction.Builder)
  - [GuidedDatePickerAction.BuilderBase](https://developer.android.com/reference/android/support/v17/leanback/widget/GuidedDatePickerAction.BuilderBase)
  - [HeaderItem](https://developer.android.com/reference/android/support/v17/leanback/widget/HeaderItem)
  - [HorizontalGridView](https://developer.android.com/reference/android/support/v17/leanback/widget/HorizontalGridView)
  - [HorizontalHoverCardSwitcher](https://developer.android.com/reference/android/support/v17/leanback/widget/HorizontalHoverCardSwitcher)
  - [ImageCardView](https://developer.android.com/reference/android/support/v17/leanback/widget/ImageCardView)
  - [ItemAlignmentFacet](https://developer.android.com/reference/android/support/v17/leanback/widget/ItemAlignmentFacet)
  - [ItemAlignmentFacet.ItemAlignmentDef](https://developer.android.com/reference/android/support/v17/leanback/widget/ItemAlignmentFacet.ItemAlignmentDef)
  - [ItemBridgeAdapter](https://developer.android.com/reference/android/support/v17/leanback/widget/ItemBridgeAdapter)
  - [ItemBridgeAdapter.AdapterListener](https://developer.android.com/reference/android/support/v17/leanback/widget/ItemBridgeAdapter.AdapterListener)
  - [ItemBridgeAdapter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/ItemBridgeAdapter.ViewHolder)
  - [ItemBridgeAdapter.Wrapper](https://developer.android.com/reference/android/support/v17/leanback/widget/ItemBridgeAdapter.Wrapper)
  - [ItemBridgeAdapterShadowOverlayWrapper](https://developer.android.com/reference/android/support/v17/leanback/widget/ItemBridgeAdapterShadowOverlayWrapper)
  - [ListRow](https://developer.android.com/reference/android/support/v17/leanback/widget/ListRow)
  - [ListRowHoverCardView](https://developer.android.com/reference/android/support/v17/leanback/widget/ListRowHoverCardView)
  - [ListRowPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/ListRowPresenter)
  - [ListRowPresenter.SelectItemViewHolderTask](https://developer.android.com/reference/android/support/v17/leanback/widget/ListRowPresenter.SelectItemViewHolderTask)
  - [ListRowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/ListRowPresenter.ViewHolder)
  - [ListRowView](https://developer.android.com/reference/android/support/v17/leanback/widget/ListRowView)
  - [MultiActionsProvider.MultiAction](https://developer.android.com/reference/android/support/v17/leanback/widget/MultiActionsProvider.MultiAction)
  - [ObjectAdapter](https://developer.android.com/reference/android/support/v17/leanback/widget/ObjectAdapter)
  - [ObjectAdapter.DataObserver](https://developer.android.com/reference/android/support/v17/leanback/widget/ObjectAdapter.DataObserver)
  - [OnChildViewHolderSelectedListener](https://developer.android.com/reference/android/support/v17/leanback/widget/OnChildViewHolderSelectedListener)
  - [PageRow](https://developer.android.com/reference/android/support/v17/leanback/widget/PageRow)
  - [Parallax](https://developer.android.com/reference/android/support/v17/leanback/widget/Parallax)
  - [Parallax.FloatProperty](https://developer.android.com/reference/android/support/v17/leanback/widget/Parallax.FloatProperty)
  - [Parallax.IntProperty](https://developer.android.com/reference/android/support/v17/leanback/widget/Parallax.IntProperty)
  - [Parallax.PropertyMarkerValue](https://developer.android.com/reference/android/support/v17/leanback/widget/Parallax.PropertyMarkerValue)
  - [ParallaxEffect](https://developer.android.com/reference/android/support/v17/leanback/widget/ParallaxEffect)
  - [ParallaxTarget](https://developer.android.com/reference/android/support/v17/leanback/widget/ParallaxTarget)
  - [ParallaxTarget.DirectPropertyTarget](https://developer.android.com/reference/android/support/v17/leanback/widget/ParallaxTarget.DirectPropertyTarget)
  - [ParallaxTarget.PropertyValuesHolderTarget](https://developer.android.com/reference/android/support/v17/leanback/widget/ParallaxTarget.PropertyValuesHolderTarget)
  - [PlaybackControlsRow](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRow)
  - [PlaybackControlsRow.ClosedCaptioningAction](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRow.ClosedCaptioningAction)
  - [PlaybackControlsRow.FastForwardAction](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRow.FastForwardAction)
  - [PlaybackControlsRow.HighQualityAction](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRow.HighQualityAction)
  - [PlaybackControlsRow.MoreActions](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRow.MoreActions)
  - [PlaybackControlsRow.MultiAction](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRow.MultiAction)
  - [PlaybackControlsRow.OnPlaybackProgressCallback](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRow.OnPlaybackProgressCallback)
  - [PlaybackControlsRow.PictureInPictureAction](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRow.PictureInPictureAction)
  - [PlaybackControlsRow.PlayPauseAction](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRow.PlayPauseAction)
  - [PlaybackControlsRow.RepeatAction](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRow.RepeatAction)
  - [PlaybackControlsRow.RewindAction](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRow.RewindAction)
  - [PlaybackControlsRow.ShuffleAction](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRow.ShuffleAction)
  - [PlaybackControlsRow.SkipNextAction](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRow.SkipNextAction)
  - [PlaybackControlsRow.SkipPreviousAction](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRow.SkipPreviousAction)
  - [PlaybackControlsRow.ThumbsAction](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRow.ThumbsAction)
  - [PlaybackControlsRow.ThumbsDownAction](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRow.ThumbsDownAction)
  - [PlaybackControlsRow.ThumbsUpAction](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRow.ThumbsUpAction)
  - [PlaybackControlsRowPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRowPresenter)
  - [PlaybackControlsRowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackControlsRowPresenter.ViewHolder)
  - [PlaybackRowPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackRowPresenter)
  - [PlaybackRowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackRowPresenter.ViewHolder)
  - [PlaybackSeekDataProvider](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackSeekDataProvider)
  - [PlaybackSeekDataProvider.ResultCallback](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackSeekDataProvider.ResultCallback)
  - [PlaybackSeekUi.Client](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackSeekUi.Client)
  - [PlaybackTransportRowPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackTransportRowPresenter)
  - [PlaybackTransportRowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/PlaybackTransportRowPresenter.ViewHolder)
  - [Presenter](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter)
  - [Presenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter.ViewHolder)
  - [Presenter.ViewHolderTask](https://developer.android.com/reference/android/support/v17/leanback/widget/Presenter.ViewHolderTask)
  - [PresenterSelector](https://developer.android.com/reference/android/support/v17/leanback/widget/PresenterSelector)
  - [PresenterSwitcher](https://developer.android.com/reference/android/support/v17/leanback/widget/PresenterSwitcher)
  - [RecyclerViewParallax](https://developer.android.com/reference/android/support/v17/leanback/widget/RecyclerViewParallax)
  - [RecyclerViewParallax.ChildPositionProperty](https://developer.android.com/reference/android/support/v17/leanback/widget/RecyclerViewParallax.ChildPositionProperty)
  - [Row](https://developer.android.com/reference/android/support/v17/leanback/widget/Row)
  - [RowHeaderPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/RowHeaderPresenter)
  - [RowHeaderPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowHeaderPresenter.ViewHolder)
  - [RowHeaderView](https://developer.android.com/reference/android/support/v17/leanback/widget/RowHeaderView)
  - [RowPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter)
  - [RowPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/RowPresenter.ViewHolder)
  - [SearchBar](https://developer.android.com/reference/android/support/v17/leanback/widget/SearchBar)
  - [SearchEditText](https://developer.android.com/reference/android/support/v17/leanback/widget/SearchEditText)
  - [SearchOrbView](https://developer.android.com/reference/android/support/v17/leanback/widget/SearchOrbView)
  - [SearchOrbView.Colors](https://developer.android.com/reference/android/support/v17/leanback/widget/SearchOrbView.Colors)
  - [SectionRow](https://developer.android.com/reference/android/support/v17/leanback/widget/SectionRow)
  - [ShadowOverlayContainer](https://developer.android.com/reference/android/support/v17/leanback/widget/ShadowOverlayContainer)
  - [ShadowOverlayHelper](https://developer.android.com/reference/android/support/v17/leanback/widget/ShadowOverlayHelper)
  - [ShadowOverlayHelper.Builder](https://developer.android.com/reference/android/support/v17/leanback/widget/ShadowOverlayHelper.Builder)
  - [ShadowOverlayHelper.Options](https://developer.android.com/reference/android/support/v17/leanback/widget/ShadowOverlayHelper.Options)
  - [SinglePresenterSelector](https://developer.android.com/reference/android/support/v17/leanback/widget/SinglePresenterSelector)
  - [SparseArrayObjectAdapter](https://developer.android.com/reference/android/support/v17/leanback/widget/SparseArrayObjectAdapter)
  - [SpeechOrbView](https://developer.android.com/reference/android/support/v17/leanback/widget/SpeechOrbView)
  - [TitleHelper](https://developer.android.com/reference/android/support/v17/leanback/widget/TitleHelper)
  - [TitleView](https://developer.android.com/reference/android/support/v17/leanback/widget/TitleView)
  - [TitleViewAdapter](https://developer.android.com/reference/android/support/v17/leanback/widget/TitleViewAdapter)
  - [VerticalGridPresenter](https://developer.android.com/reference/android/support/v17/leanback/widget/VerticalGridPresenter)
  - [VerticalGridPresenter.ViewHolder](https://developer.android.com/reference/android/support/v17/leanback/widget/VerticalGridPresenter.ViewHolder)
  - [VerticalGridView](https://developer.android.com/reference/android/support/v17/leanback/widget/VerticalGridView)