viewpager嵌套一个子viewpager处理滑动冲突方法
来源:互联网 发布:linux系统怎么操作 编辑:程序博客网 时间:2024/06/05 10:17
- 场景如:TabHost滑动切换页面时有一个页面里面有个广告轮播图,这时或出现子控件没有滑动事件。
- 遇到这种情况,一般重写子viewpager中onTouchEvent(),这个方法主要用于事件的处理,当返回true表示消费处理当前事件,当返回false则不处理,交给子控件进行继续分发。
public class ChildViewPager extends ViewPager{ /** 触摸时按下的点 **/ private PointF downP = new PointF(); /** 触摸时当前的点 **/ private PointF curP = new PointF(); public ChildViewPager(Context context, AttributeSet attrs) { super(context, attrs); // TODO Auto-generated constructor stub } public ChildViewPager(Context context) { super(context); // TODO Auto-generated constructor stub } @Override public boolean onTouchEvent(MotionEvent ev) { switch (ev.getAction()) { case MotionEvent.ACTION_DOWN: ...... //记录按下时候的坐标 //切记不可用 downP = curP ,这样在改变curP的时候,downP也会改变 downP.x = ev.getX(); downP.y = ev.getY(); //此句代码是为了通知他的父ViewPager现在进行的是本控件的操作,不要对我的操作进行干扰 getParent().requestDisallowInterceptTouchEvent(true); break; case MotionEvent.ACTION_MOVE: ...... //此句代码是为了通知他的父ViewPager现在进行的是本控件的操作,不要对我的操作进行干扰 getParent().requestDisallowInterceptTouchEvent(true); break; case MotionEvent.ACTION_UP: ...... //在up时判断是否按下和松手的坐标为一个点 //如果是一个点,将执行点击事件,这是我自己写的点击事件,而不是onclick getParent().requestDisallowInterceptTouchEvent(false); if(downP.x==curP.x && downP.y==curP.y){ return true; } break; }
0 0
- viewpager嵌套一个子viewpager处理滑动冲突方法
- 处理ViewPager嵌套ViewPager的滑动事件冲突
- 处理ViewPager嵌套ViewPager的滑动事件冲突
- viewpager嵌套viewpager滑动处理
- 解决ViewPager嵌套后子ViewPager不能滑动的方法
- 解决ViewPager嵌套ViewPager滑动冲突问题
- 解决ViewPager嵌套ViewPager滑动冲突问题
- ViewPager,ScrollView 嵌套ViewPager滑动冲突解决
- ViewPager,ScrollView 嵌套ViewPager滑动冲突解决
- ViewPager,ScrollView 嵌套ViewPager滑动冲突解决
- ViewPager,ScrollView 嵌套ViewPager滑动冲突解决
- ViewPager,ScrollView 嵌套ViewPager滑动冲突解决
- ViewPager,ScrollView 嵌套ViewPager滑动冲突解决
- ViewPager,ScrollView 嵌套ViewPager滑动冲突解决
- ViewPager,ScrollView 嵌套ViewPager滑动冲突解决
- ViewPager,ScrollView 嵌套ViewPager滑动冲突解决
- ViewPager,ScrollView嵌套ViewPager滑动冲突解决
- scrollview嵌套viewpager 滑动冲突
- 线程:This application is modifying the autolayout engin from a background thread
- 搬圆桌-Java
- 产生、获取及清理缓存笔记
- njust 1927 谁才是最强战舰!(anti-nim博弈论)
- 二叉树的所有路径
- viewpager嵌套一个子viewpager处理滑动冲突方法
- 数据库的关联操作
- 站内信的实现:数据库的设计
- Oracle并行基础一
- 通过euclidean_distances计算向量之间的距离
- C# web 后台页面间的跳转
- Eclipse ADT插件安装
- 台大林轩田《机器学习基石》学习笔记:线性模型一(PLA/pocket、Linearregression )
- linux下(ubuntu),段错误产生的原因Segmentation Fault