У меня есть TabLayout
настройка с ViewPager
. Когда я выбираю вкладку, ViewPager
прокручивает до выбранной страницы с анимацией (показывая все страницы между текущей страницей и выбранной страницей). Я хочу, чтобы ViewPager
непосредственно перешел на выбранную страницу.
Я знаю, что могу использовать viewPager.setCurrentItem(1, false)
для отключения smoothScroll
. Но я хочу изменить поведение по умолчанию, чтобы отключить эффект smoothScroll
для ViewPager
Вот что я сделал.
val mSectionsPagerAdapter = SectionsPagerAdapter(supportFragmentManager)
vp!!.adapter = mSectionsPagerAdapter
vp!!.addOnPageChangeListener(object: ViewPager.OnPageChangeListener {
override fun onPageScrollStateChanged(state: Int) {
}
override fun onPageScrolled(position: Int, positionOffset: Float, positionOffsetPixels: Int) {
}
override fun onPageSelected(position: Int) {
when (position) {
0 -> supportActionBar!!.title = "Page 1"
1 -> supportActionBar!!.title = "Page 2"
2 -> supportActionBar!!.title = "Page 3"
3 -> supportActionBar!!.title = "Page 4"
}
}
})
tabLayout.setupWithViewPager(vp)