Skip to content

Instantly share code, notes, and snippets.

@thevoiceless
thevoiceless / PercentPageChangeCallback.kt
Created April 29, 2020 18:00
ViewPager2 OnPageChangeCallback that tracks the percentage visibility for each page
object : ViewPager2.OnPageChangeCallback() {
private var settledOnPage = 0
private var idle = true
val percentages = MutableList(adapter!!.itemCount) { 0f }
.apply { set(0, 1f) }
override fun onPageScrolled(position: Int, positionOffset: Float, positionOffsetPixels: Int) {
Timber.i("${1f - positionOffset} of page ${position + 1} is visible")