android配置TabLayout的tabMode为scrollable如何防止TabLayout会先滑动到原先位置
可以通过设置TabLayout的addOnTabSelectedListener监听器,在选中tab时手动将TabLayout的滑动位置滚动到当前选中tab的位置,避免出现滑动到原先位置的情况。
示例代码如下:
TabLayout tabLayout = findViewById(R.id.tab_layout);
ViewPager viewPager = findViewById(R.id.view_pager);
// 设置TabLayout的tabMode为scrollable
tabLayout.setTabMode(TabLayout.MODE_SCROLLABLE);
// 设置ViewPager的适配器
viewPager.setAdapter(new MyPagerAdapter(getSupportFragmentManager()));
// 将TabLayout和ViewPager关联起来
tabLayout.setupWithViewPager(viewPager);
// 添加TabLayout的选中监听器
tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
@Override
public void onTabSelected(TabLayout.Tab tab) {
// 手动将TabLayout的滑动位置滚动到当前选中tab的位置
tabLayout.scrollTo(tab.getPosition(), 0);
}
@Override
public void onTabUnselected(TabLayout.Tab tab) {
}
@Override
public void onTabReselected(TabLayout.Tab tab) {
}
});
``
原文地址: http://www.cveoy.top/t/topic/hgSZ 著作权归作者所有。请勿转载和采集!