有时候我们需要禁止掉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 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦