ViewPager 通过
onInterceptTouchEvent(MotionEvent ev)
以及
onTouchEvent(MotionEvent ev)
两个方法手势是否拦截来确定能否滑动。
public class NoSlidingViewPager extends ViewPager {
private boolean slide = false;// false 禁止ViewPager左右滑动。
public NoSlidingViewPager(@NonNull Context context) {
super(context);
}
public NoSlidingViewPager(@NonNull Context context, @Nullable AttributeSet attrs) {
super(context, attrs);
}
public void setScrollable(boolean slide) {
this.slide = slide;
}
@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
return slide;
}
@Override
public boolean onTouchEvent(MotionEvent ev) {
return slide;
}
}
本文介绍了一种在Android中禁用ViewPager左右滑动的方法。通过自定义NoSlidingViewPager类并覆盖onInterceptTouchEvent和onTouchEvent方法,可以实现ViewPager滑动的开启与关闭功能。
4763

被折叠的 条评论
为什么被折叠?



