今天做了一个旅游商品的活动在编写旅游线路的时候用到了viewpager 由于滑动引起的 一个bug暂时不能解决 所以索性禁止到viewPager 的滑动事件只能点击切换。暂时能满足项目需求
现在贴一下代码,没什么特别的,就是自定义一下viewpager,对用户的touch事件进行一下判断 是不是进行拦截,代码就注释就不罗嗦了
import android.content.Context; import android.support.v4.view.ViewPager; import android.util.AttributeSet; import android.view.MotionEvent; /** * Created by ChenHe on 2016/8/16. */ public class NoScrollViewPager extends ViewPager { /** * 自定义ViewPager 这里 private boolean noScroll = true;返回true则是不能滑动返回fales为可以滑动,主要是 * 拦截用户的onTouchEvent * **/ private boolean noScroll = true; public NoScrollViewPager(Context context, AttributeSet attrs) { super(context, attrs); // TODO Auto-generated constructor stub } public NoScrollViewPager(Context context) { super(context); } public void setNoScroll(boolean noScroll) { this.noScroll = noScroll; } @Override public void scrollTo(int x, int y) { super.scrollTo(x, y); } @Override public boolean onTouchEvent(MotionEvent arg0) { /* return false;//super.onTouchEvent(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); } }