# ListRowPresenter.SelectItemViewHolderTask

# ListRowPresenter.SelectItemViewHolderTask

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

*** ** * ** ***

Kotlin\|[Java](https://developer.android.com/reference/androidx/leanback/widget/ListRowPresenter.SelectItemViewHolderTask "View this page in Java")

<br />

```
class ListRowPresenter.SelectItemViewHolderTask : Presenter.ViewHolderTask
```

<br />

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

*** ** * ** ***

A task on the ListRowPresenter.ViewHolder that can select an item by position in the HorizontalGridView and perform an optional item task on it.

## Summary

|                                                                                                                          ### Public constructors                                                                                                                           |
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [SelectItemViewHolderTask](https://developer.android.com/reference/kotlin/androidx/leanback/widget/ListRowPresenter.SelectItemViewHolderTask#SelectItemViewHolderTask(int))`(itemPosition: `[Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)`)` |

|                                                      ### Public functions                                                       |
|---------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)                                                     | [getItemPosition](https://developer.android.com/reference/kotlin/androidx/leanback/widget/ListRowPresenter.SelectItemViewHolderTask#getItemPosition())`()` Returns the adapter position of item to select.                                                                                                                                                                                                 |
| [Presenter.ViewHolderTask](https://developer.android.com/reference/kotlin/androidx/leanback/widget/Presenter.ViewHolderTask)`?` | [getItemTask](https://developer.android.com/reference/kotlin/androidx/leanback/widget/ListRowPresenter.SelectItemViewHolderTask#getItemTask())`()` Returns optional task to run when the item is selected, null for no task.                                                                                                                                                                               |
| [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html)                                             | [isSmoothScroll](https://developer.android.com/reference/kotlin/androidx/leanback/widget/ListRowPresenter.SelectItemViewHolderTask#isSmoothScroll())`()` Returns true if smooth scrolling to the item false otherwise.                                                                                                                                                                                     |
| [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)                                                   | [run](https://developer.android.com/reference/kotlin/androidx/leanback/widget/ListRowPresenter.SelectItemViewHolderTask#run(androidx.leanback.widget.Presenter.ViewHolder))`(holder: `[Presenter.ViewHolder](https://developer.android.com/reference/kotlin/androidx/leanback/widget/Presenter.ViewHolder)`?)` Called to perform a task on view holder.                                                    |
| [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)                                                   | [setItemPosition](https://developer.android.com/reference/kotlin/androidx/leanback/widget/ListRowPresenter.SelectItemViewHolderTask#setItemPosition(int))`(itemPosition: `[Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)`)` Sets the adapter position of item to select.                                                                                                      |
| [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)                                                   | [setItemTask](https://developer.android.com/reference/kotlin/androidx/leanback/widget/ListRowPresenter.SelectItemViewHolderTask#setItemTask(androidx.leanback.widget.Presenter.ViewHolderTask))`(itemTask: `[Presenter.ViewHolderTask](https://developer.android.com/reference/kotlin/androidx/leanback/widget/Presenter.ViewHolderTask)`?)` Sets task to run when the item is selected, null for no task. |
| [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)                                                   | [setSmoothScroll](https://developer.android.com/reference/kotlin/androidx/leanback/widget/ListRowPresenter.SelectItemViewHolderTask#setSmoothScroll(boolean))`(smoothScroll: `[Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html)`)` Sets smooth scrolling to the item or jump to the item without scrolling.                                                              |

## Public constructors

### SelectItemViewHolderTask

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

```
SelectItemViewHolderTask(itemPosition: Int)
```  

## Public functions

### getItemPosition

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

```
fun getItemPosition(): Int
```

Returns the adapter position of item to select.  

|                                   Returns                                   |
|-----------------------------------------------------------------------------|-----------------------------------------|
| [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) | The adapter position of item to select. |

### getItemTask

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

```
fun getItemTask(): Presenter.ViewHolderTask?
```

Returns optional task to run when the item is selected, null for no task.  

|                                                             Returns                                                             |
|---------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------|
| [Presenter.ViewHolderTask](https://developer.android.com/reference/kotlin/androidx/leanback/widget/Presenter.ViewHolderTask)`?` | Optional task to run when the item is selected, null for no task. |

### isSmoothScroll

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

```
fun isSmoothScroll(): Boolean
```

Returns true if smooth scrolling to the item false otherwise. By default it is true.  

|                                       Returns                                       |
|-------------------------------------------------------------------------------------|---------------------------------------------------------|
| [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) | True for smooth scrolling to the item, false otherwise. |

### run

```
fun run(holder: Presenter.ViewHolder?): Unit
```

Called to perform a task on view holder.  

|                                                            Parameters                                                             |
|-----------------------------------------------------------------------------------------------------------------------------------|----------------------------------|
| `holder: `[Presenter.ViewHolder](https://developer.android.com/reference/kotlin/androidx/leanback/widget/Presenter.ViewHolder)`?` | The view holder to perform task. |

### setItemPosition

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

```
fun setItemPosition(itemPosition: Int): Unit
```

Sets the adapter position of item to select.  

|                                         Parameters                                          |
|---------------------------------------------------------------------------------------------|----------------------------------|
| `itemPosition: `[Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) | Position of the item in adapter. |

### setItemTask

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

```
fun setItemTask(itemTask: Presenter.ViewHolderTask?): Unit
```

Sets task to run when the item is selected, null for no task.  

|                                                                 Parameters                                                                  |
|---------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------|
| `itemTask: `[Presenter.ViewHolderTask](https://developer.android.com/reference/kotlin/androidx/leanback/widget/Presenter.ViewHolderTask)`?` | Optional task to run when the item is selected, null for no task. |

### setSmoothScroll

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

```
fun setSmoothScroll(smoothScroll: Boolean): Unit
```

Sets smooth scrolling to the item or jump to the item without scrolling. By default it is true.  

|                                             Parameters                                              |
|-----------------------------------------------------------------------------------------------------|---------------------------------------------------------|
| `smoothScroll: `[Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) | True for smooth scrolling to the item, false otherwise. |