# ViewPager.SimpleOnPageChangeListener

# ViewPager.SimpleOnPageChangeListener

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

*** ** * ** ***

Kotlin \|[Java](https://developer.android.com/reference/androidx/viewpager/widget/ViewPager.SimpleOnPageChangeListener "View this page in Java")


```
class ViewPager.SimpleOnPageChangeListener : ViewPager.OnPageChangeListener
```

<br />

*** ** * ** ***

Simple implementation of the [OnPageChangeListener](https://developer.android.com/reference/kotlin/androidx/viewpager/widget/ViewPager.OnPageChangeListener) interface with stub implementations of each method. Extend this if you do not intend to override every method of [OnPageChangeListener](https://developer.android.com/reference/kotlin/androidx/viewpager/widget/ViewPager.OnPageChangeListener).

## Summary

|                                                                           ### Public constructors                                                                            |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [SimpleOnPageChangeListener](https://developer.android.com/reference/kotlin/androidx/viewpager/widget/ViewPager.SimpleOnPageChangeListener#SimpleOnPageChangeListener())`()` |

|                             ### Public functions                              |
|-------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) | [onPageScrollStateChanged](https://developer.android.com/reference/kotlin/androidx/viewpager/widget/ViewPager.SimpleOnPageChangeListener#onPageScrollStateChanged(int))`(state: `[Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)`)` Called when the scroll state changes.                                                                                                                                                                                                                                                                                                                                     |
| [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) | [onPageScrolled](https://developer.android.com/reference/kotlin/androidx/viewpager/widget/ViewPager.SimpleOnPageChangeListener#onPageScrolled(int,float,int))`(` ` position: `[Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)`,` ` positionOffset: `[Float](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html)`,` ` positionOffsetPixels: `[Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) `)` This method will be invoked when the current page is scrolled, either as part of a programmatically initiated smooth scroll or a user initiated touch scroll. |
| [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) | [onPageSelected](https://developer.android.com/reference/kotlin/androidx/viewpager/widget/ViewPager.SimpleOnPageChangeListener#onPageSelected(int))`(position: `[Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)`)` This method will be invoked when a new page becomes selected.                                                                                                                                                                                                                                                                                                                              |

## Public constructors

### SimpleOnPageChangeListener

Added in 1.1.0  

```
SimpleOnPageChangeListener()
```  

## Public functions

### onPageScrollStateChanged

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

```
fun onPageScrollStateChanged(state: Int): Unit
```

Called when the scroll state changes. Useful for discovering when the user begins dragging, when the pager is automatically settling to the current page, or when it is fully stopped/idle.  

|                                      Parameters                                      |
|--------------------------------------------------------------------------------------|-----------------------|
| `state: `[Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) | The new scroll state. |

|                                                              See also                                                               |
|-------------------------------------------------------------------------------------------------------------------------------------|---|
| [SCROLL_STATE_IDLE](https://developer.android.com/reference/kotlin/androidx/viewpager/widget/ViewPager#SCROLL_STATE_IDLE())         |   |
| [SCROLL_STATE_DRAGGING](https://developer.android.com/reference/kotlin/androidx/viewpager/widget/ViewPager#SCROLL_STATE_DRAGGING()) |   |
| [SCROLL_STATE_SETTLING](https://developer.android.com/reference/kotlin/androidx/viewpager/widget/ViewPager#SCROLL_STATE_SETTLING()) |   |

### onPageScrolled

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

```
fun onPageScrolled(
    position: Int,
    positionOffset: Float,
    positionOffsetPixels: Int
): Unit
```

This method will be invoked when the current page is scrolled, either as part of a programmatically initiated smooth scroll or a user initiated touch scroll.  

|                                             Parameters                                              |
|-----------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------|
| `position: `[Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)             | Position index of the first page currently being displayed. Page position+1 will be visible if positionOffset is nonzero. |
| `positionOffset: `[Float](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html)   | Value from \[0, 1) indicating the offset from the page at position.                                                       |
| `positionOffsetPixels: `[Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) | Value in pixels indicating the offset from position.                                                                      |

### onPageSelected

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

```
fun onPageSelected(position: Int): Unit
```

This method will be invoked when a new page becomes selected. Animation is not necessarily complete.  

|                                       Parameters                                        |
|-----------------------------------------------------------------------------------------|------------------------------------------|
| `position: `[Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) | Position index of the new selected page. |