本文主要是介绍Android动态设置ViewPager是否可手指滑动,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
重写onTouchEvent和onInterceptTouchEvent即可.
注意:这段代码并不是取消了滑动效果,只是拦截了滑动事件,不允许手指滑动,通过setCurrentItem切换时依旧有滑动的动画效果。
/*** 自定义ViewPager,可动态设置是否支持滑动* Created by monty on 2017/8/27.*/public class CustomViewPager extends ViewPager {private boolean isCanScroll;public CustomViewPager(Context context) {super(context);}public CustomViewPager(Context context, AttributeSet attrs) {super(context, attrs);}@Overridepublic boolean onTouchEvent(MotionEvent ev) {if (isCanScroll) {//允许滑动则应该调用父类的方法return super.onTouchEvent(ev);} else {//禁止滑动则不做任何操作,直接返回true即可return true;}}@Overridepublic boolean onInterceptTouchEvent(MotionEvent arg0) {if (isCanScroll)return super.onInterceptTouchEvent(arg0);elsereturn false;}//设置是否允许滑动,true是可以滑动,false是禁止滑动public void setIsCanScroll(boolean isCanScroll) {this.isCanScroll = isCanScroll;}
}
这篇关于Android动态设置ViewPager是否可手指滑动的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!