#自定义ViewPage类 实现
#“禁用左右滑动事件”
本文背景:
底部Tab导航,Content使用ViewPage ,然后适配器填充Fragment。最常见应用的一个界面。今天想要在其中一个Fragment中再添加个的ViewPage,ViewPage默认可左右滑动,这样就成功为自己搞了个坑。
所以对于外联的ViewPage,我只想通过底部 Tab导航来切换(就是禁用ViewPage默认的滑动事件),这样内联的ViewPage的左右滑动就不会受到影响。
/**
*创建 ViewPage 子类来实现
*/
public class CustomViewPager extends ViewPager {
private boolean isPagingEnabled = true;
public CustomViewPager(Context context) {
super(context);
}
public CustomViewPager(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
public boolean onTouchEvent(MotionEvent event) {
return this.isPagingEnabled && super.onTouchEvent(event);
}
@Override
public boolean onInterceptTouchEvent(MotionEvent event) {
return this.isPagingEnabled && super.onInterceptTouchEvent(event);
}
//调用这个来实现控制 ViewPage 滑动事件
public void setPagingEnabled(boolean b) {
this.isPagingEnabled = b;
}}
以上代码为转载自:原文 感谢。