禁止ViewPager的左右滑动事件

Android开发中ViewPager用到的频率还是比较频繁的,我们知道ViewPager有左右滑动的监听事件。有时候我们不想使用它的左右滑动监听,想要去掉,我们该怎么办?这时候我们布局的时候不要直接用v4包下面的ViewPager,而是实现新建自己的ViewPager继承v4下面的ViewPager,复写onTouchEvent和onInterceptTouchEvent方法。这两个方法主要是用来控制是否接收滑动监听事件的。如果返回false就不接收滑动监听事件。下面直接看代码

package com.glinkus.icare.ui;

import android.annotation.SuppressLint;
import android.content.Context;
import android.support.v4.view.ViewPager;
import android.util.AttributeSet;
import android.view.MotionEvent;

/**
 * @author syz
 * @date 2016-7-5
 */
public class MainViewPager extends ViewPager{

	/**是否禁止左右滑动,true为禁止,false为不禁止*/
	private boolean noScroll = true;  
	  
    public MainViewPager(Context context, AttributeSet attrs) {  
        super(context, attrs);  
    }  
  
    public MainViewPager(Context context) {  
        super(context);  
    }  
  
    public void setNoScroll(boolean noScroll) {  
        this.noScroll = noScroll;  
    }  
  
    @Override  
    public void scrollTo(int x, int y) {  
        super.scrollTo(x, y);  
    }  
  
    @SuppressLint("ClickableViewAccessibility")
	@Override  
    public boolean onTouchEvent(MotionEvent arg0) {  
        if (noScroll)  
            return false;  
        else  
            return super.onTouchEvent(arg0);  
    }  
  
    @Override  
    public boolean onInterceptTouchEvent(MotionEvent arg0) {  
        if (noScroll)  
            return false;  
        else  
            return super.onInterceptTouchEvent(arg0);  
    }  
  
    @Override  
    public void setCurrentItem(int item, boolean smoothScroll) {  
        super.setCurrentItem(item, smoothScroll);  
    }  
  
    @Override  
    public void setCurrentItem(int item) {  
        super.setCurrentItem(item);  
    }


}


  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值