# PlaybackTransportRowPresenter.ViewHolder

Artifact: [androidx.leanback:leanback](https://developer.android.com/jetpack/androidx/releases/leanback) [View Source](https://cs.android.com/search?q=file:androidx/leanback/widget/PlaybackTransportRowPresenter.java+class:androidx.leanback.widget.PlaybackTransportRowPresenter.ViewHolder) Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/leanback#1.1.0)

*** ** * ** ***

<br />

```
inner class PlaybackTransportRowPresenter.ViewHolder : PlaybackRowPresenter.ViewHolder, PlaybackSeekUi
```

<br />

|---|---|---|---|---|
| [kotlin.Any](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html) |||||
| ↳ | [androidx.leanback.widget.Presenter.ViewHolder](https://developer.android.com/reference/kotlin/androidx/leanback/widget/Presenter.ViewHolder) ||||
|   | ↳ | [androidx.leanback.widget.RowPresenter.ViewHolder](https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder) |||
|   |   | ↳ | [androidx.leanback.widget.PlaybackRowPresenter.ViewHolder](https://developer.android.com/reference/kotlin/androidx/leanback/widget/PlaybackRowPresenter.ViewHolder) ||
|   |   |   | ↳ | [androidx.leanback.widget.PlaybackTransportRowPresenter.ViewHolder](https://developer.android.com/reference/kotlin/androidx/leanback/widget/PlaybackTransportRowPresenter.ViewHolder) |

*** ** * ** ***

A ViewHolder for the PlaybackControlsRow supporting seek UI.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/kotlin/androidx/leanback/widget/PlaybackTransportRowPresenter.ViewHolder#ViewHolder(android.view.View,androidx.leanback.widget.Presenter)(rootView: https://developer.android.com/reference/android/view/View.html!, descriptionPresenter: https://developer.android.com/reference/kotlin/androidx/leanback/widget/Presenter!)` Constructor of ViewHolder of PlaybackTransportRowPresenter |

| ### Public functions |
|---|---|
| `https://developer.android.com/reference/android/widget/TextView.html!` | `https://developer.android.com/reference/kotlin/androidx/leanback/widget/PlaybackTransportRowPresenter.ViewHolder#getCurrentPositionView()()` Returns the TextView that showing current position label. |
| `https://developer.android.com/reference/kotlin/androidx/leanback/widget/Presenter.ViewHolder!` | `https://developer.android.com/reference/kotlin/androidx/leanback/widget/PlaybackTransportRowPresenter.ViewHolder#getDescriptionViewHolder()()` |
| `https://developer.android.com/reference/android/widget/TextView.html!` | `https://developer.android.com/reference/kotlin/androidx/leanback/widget/PlaybackTransportRowPresenter.ViewHolder#getDurationView()()` Returns the TextView that showing total time label. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/leanback/widget/PlaybackTransportRowPresenter.ViewHolder#setPlaybackSeekUiClient(androidx.leanback.widget.PlaybackSeekUi.Client)(client: https://developer.android.com/reference/kotlin/androidx/leanback/widget/PlaybackSeekUi.Client!)` Interface to be implemented by UI widget to support PlaybackSeekUi. |

| ### Protected functions |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/leanback/widget/PlaybackTransportRowPresenter.ViewHolder#onSetCurrentPositionLabel(long)(currentTimeMs: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html)` Called to update current time label. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/leanback/widget/PlaybackTransportRowPresenter.ViewHolder#onSetDurationLabel(long)(totalTimeMs: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html)` Called to update total time label. |

### Inherited functions

From [androidx.leanback.widget.FacetProvider](https://developer.android.com/reference/kotlin/androidx/leanback/widget/FacetProvider) `abstract https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html?` `https://developer.android.com/reference/kotlin/androidx/leanback/widget/FacetProvider#getFacet(java.lang.Class<?>)(facetClass: https://developer.android.com/reference/java/lang/Class.html<*>)`

Queries optional implemented facet.
From [androidx.leanback.widget.Presenter.ViewHolder](https://developer.android.com/reference/kotlin/androidx/leanback/widget/Presenter.ViewHolder) `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html!` `https://developer.android.com/reference/kotlin/androidx/leanback/widget/Presenter.ViewHolder#getFacet(java.lang.Class<?>)(facetClass: https://developer.android.com/reference/java/lang/Class.html<*>!)`

Queries optional implemented facet.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/kotlin/androidx/leanback/widget/Presenter.ViewHolder#setFacet(java.lang.Class<?>,java.lang.Object)(facetClass: https://developer.android.com/reference/java/lang/Class.html<*>!, facetImpl: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html!)`

Sets dynamic implemented facet in addition to basic ViewHolder functions.
From [androidx.leanback.widget.RowPresenter.ViewHolder](https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder) `https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowHeaderPresenter.ViewHolder!` `https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder#getHeaderViewHolder()()`

Returns the view holder for the Row header for this Row.
`https://developer.android.com/reference/kotlin/androidx/leanback/widget/BaseOnItemViewClickedListener!` `https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder#getOnItemViewClickedListener()()`

Returns the listener for item click event.
`https://developer.android.com/reference/kotlin/androidx/leanback/widget/BaseOnItemViewSelectedListener!` `https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder#getOnItemViewSelectedListener()()`

Returns the listener for item or row selection.
`https://developer.android.com/reference/android/view/View.OnKeyListener.html!` `https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder#getOnKeyListener()()`

Returns the key listener.
`https://developer.android.com/reference/kotlin/androidx/leanback/widget/Row!` `https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder#getRow()()`

Returns the row bound to this ViewHolder.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html!` `https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder#getRowObject()()`

Returns the Row object bound to this ViewHolder.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` `https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder#getSelectLevel()()`

Returns the current selection level of the Row.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html?` `https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder#getSelectedItem()()`

Return currently selected item inside a row ViewHolder.
`https://developer.android.com/reference/kotlin/androidx/leanback/widget/Presenter.ViewHolder?` `https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder#getSelectedItemViewHolder()()`

Return `https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder` of currently selected item inside a row ViewHolder.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder#isExpanded()()`

Returns whether the Row is in its expanded state.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder#isSelected()()`

Returns whether the Row is selected.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder#setActivated(boolean)(activated: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html)`

Sets the row view's activated status.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder#setOnItemViewClickedListener(androidx.leanback.widget.BaseOnItemViewClickedListener)(listener: https://developer.android.com/reference/kotlin/androidx/leanback/widget/BaseOnItemViewClickedListener!)`

Sets the listener for item click event.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder#setOnItemViewSelectedListener(androidx.leanback.widget.BaseOnItemViewSelectedListener)(listener: https://developer.android.com/reference/kotlin/androidx/leanback/widget/BaseOnItemViewSelectedListener!)`

Sets the listener for item or row selection.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder#setOnKeyListener(android.view.View.OnKeyListener)(keyListener: https://developer.android.com/reference/android/view/View.OnKeyListener.html!)`

Sets a key listener.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder#syncActivatedStatus(android.view.View)(view: https://developer.android.com/reference/android/view/View.html!)`

Synchronizes the activated status of view to the last value passed through `https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder#setActivated(boolean)`.

### Inherited properties

From [androidx.leanback.widget.Presenter.ViewHolder](https://developer.android.com/reference/kotlin/androidx/leanback/widget/Presenter.ViewHolder) `https://developer.android.com/reference/android/view/View.html!` `https://developer.android.com/reference/kotlin/androidx/leanback/widget/Presenter.ViewHolder#view()` From [androidx.leanback.widget.RowPresenter.ViewHolder](https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder) `https://developer.android.com/reference/kotlin/androidx/leanback/graphics/ColorOverlayDimmer!` `https://developer.android.com/reference/kotlin/androidx/leanback/widget/RowPresenter.ViewHolder#mColorDimmer()`

## Public constructors

### ViewHolder

Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/leanback#1.1.0)

```
ViewHolder(rootView: View!, descriptionPresenter: Presenter!)
```

Constructor of ViewHolder of PlaybackTransportRowPresenter

| Parameters |
|---|---|
| `rootView: https://developer.android.com/reference/android/view/View.html!` | Root view of the ViewHolder. |
| `descriptionPresenter: https://developer.android.com/reference/kotlin/androidx/leanback/widget/Presenter!` | The presenter that will be used to create description ViewHolder. The description view will be added into tree. |

## Public functions

### getCurrentPositionView

Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/leanback#1.1.0)

```
fun getCurrentPositionView(): TextView!
```

Returns the TextView that showing current position label. This method might be used in `https://developer.android.com/reference/kotlin/androidx/leanback/widget/PlaybackTransportRowPresenter.ViewHolder#onSetCurrentPositionLabel(long)`.

| Returns |
|---|---|
| `https://developer.android.com/reference/android/widget/TextView.html!` | The TextView that showing current position label. |

### getDescriptionViewHolder

Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/leanback#1.1.0)

```
fun getDescriptionViewHolder(): Presenter.ViewHolder!
```

| Returns |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/leanback/widget/Presenter.ViewHolder!` | The ViewHolder for description. |

### getDurationView

Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/leanback#1.1.0)

```
fun getDurationView(): TextView!
```

Returns the TextView that showing total time label. This method might be used in `https://developer.android.com/reference/kotlin/androidx/leanback/widget/PlaybackTransportRowPresenter.ViewHolder#onSetDurationLabel(long)`.

| Returns |
|---|---|
| `https://developer.android.com/reference/android/widget/TextView.html!` | The TextView that showing total time label. |

### setPlaybackSeekUiClient

```
fun setPlaybackSeekUiClient(client: PlaybackSeekUi.Client!): Unit
```

Interface to be implemented by UI widget to support PlaybackSeekUi.

## Protected functions

### onSetCurrentPositionLabel

Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/leanback#1.1.0)

```
protected fun onSetCurrentPositionLabel(currentTimeMs: Long): Unit
```

Called to update current time label. Default implementation updates the TextView `https://developer.android.com/reference/kotlin/androidx/leanback/widget/PlaybackTransportRowPresenter.ViewHolder#getCurrentPositionView()`. Subclass might override.

| Parameters |
|---|---|
| `currentTimeMs: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html` | Current playback position in milliseconds. |

### onSetDurationLabel

Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/leanback#1.1.0)

```
protected fun onSetDurationLabel(totalTimeMs: Long): Unit
```

Called to update total time label. Default implementation updates the TextView `https://developer.android.com/reference/kotlin/androidx/leanback/widget/PlaybackTransportRowPresenter.ViewHolder#getDurationView()`. Subclass might override.

| Parameters |
|---|---|
| `totalTimeMs: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html` | Total duration of the media in milliseconds. |