我正在使用教程here,该教程使用带有FragmentStatePagerAdapter
的TabLayout。一切都很棒,除了我需要禁用第二个选项卡上的滑动,因为它使用水平滚动。如果对所有选项卡都禁用了滚动,那也没关系,但如果只为第二个选项卡禁用滚动它会很棒。
对于ViewPager,我会覆盖onInterceptTouchEvent()
方法,但这似乎不是FragmentStatePagerAdapter
的选项。关于如何做到这一点的任何想法?感谢。
编辑:我只有两个片段,所以如果FragmentStatePagerAdapter不合适,我愿意接受建议。
编辑2 :未解决的问题已经解决。但是,我仍然想知道如何防止只扫描第二个片段。
答案 0 :(得分:2)
修改onInterceptTouchEvent
和onTouchEvent
以仅排除所需的标签索引:
@Override
public boolean onInterceptTouchEvent(MotionEvent event) {
switch(getCurrentItem()){
case 1:
return false;
default:
return super.onInterceptTouchEvent(event);
}
}
@Override
public boolean onTouchEvent(MotionEvent event) {
switch(getCurrentItem()){
case 1:
return false;
default:
return super.onTouchEvent(event);
}
}