我想禁用父 viewpager 中的子 viewpager 的滑动。
我目前使用这个自定义子 viewpager
public class CustomViewPager extends ViewPager {
public CustomViewPager(Context context) {
super(context);
}
public CustomViewPager(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
public boolean onInterceptTouchEvent(MotionEvent event) {
// Never allow swiping to switch between pages
return true;
}
@Override
public boolean onTouchEvent(MotionEvent event) {
// Never allow swiping to switch between pages
return true;
}
@Override
public boolean dispatchTouchEvent(MotionEvent ev) {
return true;
}
}
这会禁用子 viewpager 的滑动,但父 viewpager 的滑动会在该部分被禁用。
最佳答案
要在不影响父事件的情况下禁用 ViewPager 滚动,请覆盖 canScrollHorizontally() 方法:
@Override
public boolean canScrollHorizontally(int direction) {
//Disable horizontal scrolling
if (enabled) {
return super.canScrollHorizontally(direction);
} else {
return false;
}
}
关于android - 禁用子 viewPager 在父 viewPager 内滑动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28492970/