600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > Android 自定义ViewPager 禁止滑动

Android 自定义ViewPager 禁止滑动

时间:2022-04-03 09:31:08

相关推荐

Android 自定义ViewPager 禁止滑动

Android 自定义ViewPager 禁止滑动

ViewPager默认是可以手动切换的,实现自动切换,但是部分需求,我们是需要禁止ViewPager手动切换的, 这个时候就需要自定义ViewPager了,其实也很简单,原理就是拦截触摸事件,让ViewPager不处理onTouch事件,直接交给他的子控件去处理就行。具体代码如下:

1.首先创建CustomViewPager 继承ViewPager

/*** @Author: Su* @Date: /11/30* @Description:*/public class CustomViewPager extends ViewPager {private boolean isCanScroll = true;public CustomViewPager(Context context) {super(context);}public CustomViewPager(Context context, AttributeSet attrs) {super(context, attrs);}public void setScanScroll(boolean isCanScroll){this.isCanScroll = isCanScroll;}@Overridepublic void scrollTo(int x, int y){if (isCanScroll){super.scrollTo(x, y);}}@Overridepublic boolean onInterceptTouchEvent(MotionEvent ev) {return false;}}

2.在xml文件中添加自定义CustomViewPager

<com.***.***.CustomViewPagerandroid:layout_width="match_parent"android:layout_height="match_parent"android:layout_below="@id/tab_layout"android:id="@+id/viewpager"></com.***.***.CustomViewPager>

3.在Activity中写入OnTouchListener

//禁止滑动切换viewPager.setOnTouchListener(new View.OnTouchListener() {@Overridepublic boolean onTouch(View v, MotionEvent event) {return true;}});

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。