Android ViewPager 禁止滑动

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从入门到放弃)