ViewPager相互嵌套,里层ViewPager无法滑动
来源:互联网 发布:中国钢铁进出口数据 编辑:程序博客网 时间:2024/05/17 22:00
以前在做项目的时候遇到过ViewPager嵌套viewpager的问题,会出现里面的viewPager响应不到它的滑动事件,出列这样问题的原因其实是事件冲突造成的,解决的方法是我们要自定义里面的viewpager,重写它的dispatchTouchEvent方法,然后我们在布局文件里定义里面的viewpager时就不要用v4包里的viewpager了,要用我们自己的viewpager,好了,不多说直接上代码:
//自定义的viewPager
public class MyViewPager extends ViewPager {
private float x;
private float y;
public MyViewPager(Context context) {
super(context);
}
public MyViewPager(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
public boolean dispatchTouchEvent(MotionEvent ev) {
switch (ev.getAction()) {
case MotionEvent.ACTION_DOWN:
// 记录按下时候的坐标
x = ev.getX();
y = ev.getY();
// 通知其父控件,现在进行的是本控件的操作,不允许拦截
getParent().requestDisallowInterceptTouchEvent(true);
break;
case MotionEvent.ACTION_UP:
break;
case MotionEvent.ACTION_CANCEL:
float x2 = ev.getX();
float y2 = ev.getY();
if(Math.abs(x2-x)>Math.abs(y2-y)){
getParent().requestDisallowInterceptTouchEvent(true);
}else{
getParent().requestDisallowInterceptTouchEvent(false);
}
break;
}
return super.dispatchTouchEvent(ev);
}
}
0 0
- ViewPager相互嵌套,里层ViewPager无法滑动
- ViewPager相互嵌套,里层ViewPager无法滑动
- ViewPager相互嵌套,里层ViewPager无法滑动
- ViewPager相互嵌套,里层ViewPager无法滑动
- ViewPager相互嵌套,里层ViewPager无法滑动
- ViewPager相互嵌套,里层ViewPager无法滑动
- ViewPager相互嵌套,里层ViewPager无法滑动的解决方法
- ViewPager相互嵌套,导致里层ViewPager无法滑动问题解决
- ViewPager嵌套ViewPager,里层的viewpager无法滑动
- ViewPager相互嵌套,里层的viewpager不能滑到外层的问题
- Android之viewPager嵌套viewPager无法滑动子viewPager
- 解决viewpager嵌套viewpager,子viewpager无法滑动的问题
- viewpager嵌套viewpager滑动处理
- 两个ViewPager嵌套滑动
- ViewPager嵌套ViewPager滑动问题的解决
- 解决ViewPager嵌套ViewPager滑动冲突问题
- 解决ViewPager嵌套ViewPager滑动冲突问题
- ViewPager,ScrollView 嵌套ViewPager滑动冲突解决
- 把pdf转jpg格式图片的方法
- Scrapy入门教程
- Java中的自定义注解
- 杂谈WebGIS
- GL_BOOK_12
- ViewPager相互嵌套,里层ViewPager无法滑动
- 设计模式之解释器模式
- java代码优化浅析
- (8)利用JConsole工具监控java程序内存和JVM
- 越狱相关四:iPhone修改位置信息
- iscrll.js ,新手入门,学习笔记。
- 执行apt-get install 报错:Errors were encountered while processing
- Block的使用
- 解决IE8使用jquery设置网页标题title报错