public class NoScrollViewPager extends ViewPager {
private boolean noScroll = true;
public NoScrollViewPager(Context context, AttributeSet attrs) {
super(context, attrs);
}
public NoScrollViewPager(Context context) {
super(context);
}
//调用此方法 参数为false 即可禁止滑动
public void setNoScroll(boolean noScroll) {
this.noScroll = noScroll;
}
@Override
public void scrollTo(int x, int y) {
// if(noScroll){ //加上判断无法用 setCurrentItem 方法切换
super.scrollTo(x, y);
// }
}
@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);
}
}
ViewPager禁止左右滑动的工具类
最新推荐文章于 2022-07-13 16:25:24 发布
本文介绍了一个名为NoScrollViewPager的自定义ViewPager类,通过设置noScroll属性为true或false来控制ViewPager是否允许滑动。该类重写了scrollTo、onTouchEvent和onInterceptTouchEvent等方法以实现滑动控制。
798

被折叠的 条评论
为什么被折叠?



