当您在ViewPager中从一个标签片段滑动到另一个标签片段时,我成功停止了ViewPager中的滚动现在我无法弄清楚如何对标签栏执行相同操作。目前,如果您在一个选项卡之间单击另一个选项卡,则选项卡将从选项卡滚动我想让它停止滚动,当你在标签之间点击时更像是在Facebook Messenger中工作。
我创建了一个CustomViewPager来停止ViewPager标签滚动:
在XML文件中我有:
<com.example.myname.tabbar.CustomViewPager/>
我尝试为CustomTabBar创建几个不同的超类,但没有任何效果。我使用了ViewPager,TabLayout.tab,PagerTabStrip,ViewPager,ViewPagerOnTabSelectedListener,CustomViewPager,但这些都不起作用。我已经尝试了各种代码,我已经在StackOverflow上查找过,但没有任何效果。
如何在TabLayout中单击选项卡片段时禁用片段之间的滚动?
答案 0 :(得分:1)
要使TabLayout不可滚动,请执行以下操作:
在代码中: myTabLayout.setTabMode(TabLayout.MODE_FIXED); 我认为上面的内容,即以编程方式设置它适合你。
在XML中 应用程式:tabMode =&#34;固定&#34;
希望这会对你有所帮助。
答案 1 :(得分:0)
我发现这个问题的解决方案对我有用。在tabLayout中的不同选项卡之间单击时,它停止了滚动效果。
我在CustomViewPager.java中添加了以下代码:
@Override
public void setCurrentItem(int item, boolean smoothScroll) {
super.setCurrentItem(item, false);
}
@Override
public void setCurrentItem(int item) {
super.setCurrentItem(item, false);
}