有时候我们需要禁止掉ViewPager的左右滑动,怎么做呢,一般是自定ViewPager。然后覆盖ViewPager的onInterceptTouchEvent(MotionEvent arg0)方法和onTouchEvent(MotionEvent arg0)方法,这两个方法的返回值都是boolean类型的,只需要将返回值改为false,那么ViewPager就不会消耗掉手指滑动的事件了
public class MyViewPager extends ViewPager { private boolean isCanScroll = false;//默认不可以滑动
public MyViewPager(Context context) { super(context);
} public MyViewPager(Context context, AttributeSet attrs) { super(context, attrs);
} public boolean isCanScroll() { return isCanScroll;
} public void setCanScroll(boolean canScroll) {
isCanScroll = canScroll;
} @Override
public boolean onTouchEvent(MotionEvent ev) { if (isCanScroll) { return super.onTouchEvent(ev);
} else { return false;
}
} @Override
public boolean onInterceptTouchEvent(MotionEvent ev) { if (isCanScroll) { return super.onInterceptTouchEvent(ev);
} else { return false;
}
}
}
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦