Вы должны использовать addOnTabSelectedListener следующим образом:
tabLayout.addOnTabSelectedListener(object : TabLayout.OnTabSelectedListener {
override fun onTabReselected(tab: TabLayout.Tab?) {
}
override fun onTabUnselected(tab: TabLayout.Tab?) {
}
override fun onTabSelected(tab: TabLayout.Tab?) {
tab?.position?.let { viewPager?.setCurrentItem(it, false) }
}
})
Вы уже используете
viewPager.isUserInputEnabled = false
Примечание: setCurrentItem (int item, boolean smoothScroll)
Установить текущую выбранную страницу с плавной прокруткой. Если для параметра smooth scrool установлено значение false, анимация не отображается