Android滑动冲突解决方法
来源:互联网 发布:电子技术仿真软件 编辑:程序博客网 时间:2024/06/06 02:21
dispatchTouchEvent(ev)伪代码:
public boolean dispatchTouchEvent(MotionEvent ev) {boolean consume = false;if (onInterceptTouchEvent(ev)) {onTouchEvent(ev);} else {child.dispatchTouchEvent(ev);}return consume;}
1.外部拦截法
重写父view的onIntercepTouchEvent():
@Override public boolean onInterceptTouchEvent(MotionEvent ev) { boolean intercept = false; int action = ev.getAction(); switch (action) { case MotionEvent.ACTION_DOWN: intercept = false; break; case MotionEvent.ACTION_MOVE: if(父view需要处理事件) { intercept = true; } else { intercept = false; } break; case MotionEvent.ACTION_UP: intercept = false; break; } return intercept; }
2.内部拦截法
先重写父view的onInterceptTouchEvent方法。
@Override public boolean onInterceptTouchEvent(MotionEvent ev) { int action = ev.getAction(); if(action == MotionEvent.ACTION_DOWN) { return false; } else { return true; } }
再重写子view的diapatchTouchEvent()
@Override public boolean dispatchTouchEvent(MotionEvent ev) { ViewParent parent = getParent(); int action = ev.getAction(); switch (action) { case MotionEvent.ACTION_DOWN: parent.requestDisallowInterceptTouchEvent(true); break; case MotionEvent.ACTION_MOVE: if(父view需要处理事件) { parent.requestDisallowInterceptTouchEvent(false); } break; case MotionEvent.ACTION_UP: break; } return super.dispatchTouchEvent(ev); }
阅读全文
0 0
- Android滑动冲突解决方法
- Android滑动冲突解决方法
- Android滑动冲突解决方法
- Android 滑动冲突的解决方法
- Android列表滑动冲突原因和解决方法
- 关于android滑动事件的冲突的一种解决方法
- Android ViewPager嵌套ViewPager滑动冲突的解决方法
- Android ViewPager嵌套ViewPager滑动冲突的解决方法
- 关于Android滑动冲突的解决方法(一)
- 关于Android滑动冲突的解决方法(二)
- Android view 滑动事件冲突解决方法(理论篇)
- Android scrollview嵌套listview 滑动事件冲突的解决方法
- android中view手势滑动冲突的两种解决方法
- ViewPager 常见滑动冲突解决方法
- Android滑动冲突解决
- Android滑动冲突
- Android滑动冲突--代码
- Android-滑动冲突解决方案
- ibatis中SQL映射配置文件中动态SQL语句语法
- Python的Print打印中文乱码解决方案
- 异常
- Integer 类型数据比较相等的那些坑
- 策略模式
- Android滑动冲突解决方法
- Java获取月份第一天和最后一天日期
- 用ThinkPHP框架写程序还原或搬家
- strcpy的使用需要注意dest的长度
- 推荐算法之 slope one 算法
- jxbrowser 监听所有网络请求 jxbrowser 系列教程2
- Ubuntu 14.04安装和使用python3.5
- 480. Sliding Window Median
- spark入门(4)----scala扫盲(1)