View子布局和父布局滑动冲突时的处理
来源:互联网 发布:js弹出遮罩层广告 编辑:程序博客网 时间:2024/06/07 05:58
当父布局和子布局的滑动发生逻辑冲突时,需要我们手动去判断该滑动事件应该交给谁处理,处理方法有:
1、外部截断法:
释义:外部截断法是指点击事件先经过父容器的拦截处理,如果父容器需要处理此事件就进行拦截,不需要就不拦截。
使用方法:重写父容器的onInterceptTouchEvent方法,在内部做相应的拦截,自己做逻辑判断,返回true表示拦截点击事件传递,也就是父容器需要进行此次触摸事件,false表示父容器不需要处理此次点击事件。
2、内部拦截法:
释义:点击事件先经过子View判断,如果子View需要此事件就直接消耗掉,否则就交给父容器进行处理。
使用方法:需要配合requestDisallowInterceptTouchEvent方法。
示例: if(getScrollY = 0) {
//允许父View进行事件拦截
getParent.requestDisallowInterceptTouchEvent(false);
}else {
//禁止父View进行事件拦截
getParent.requestDisallowInterceptTouchEvent(true);
}
1、外部截断法:
释义:外部截断法是指点击事件先经过父容器的拦截处理,如果父容器需要处理此事件就进行拦截,不需要就不拦截。
使用方法:重写父容器的onInterceptTouchEvent方法,在内部做相应的拦截,自己做逻辑判断,返回true表示拦截点击事件传递,也就是父容器需要进行此次触摸事件,false表示父容器不需要处理此次点击事件。
2、内部拦截法:
释义:点击事件先经过子View判断,如果子View需要此事件就直接消耗掉,否则就交给父容器进行处理。
使用方法:需要配合requestDisallowInterceptTouchEvent方法。
示例: if(getScrollY = 0) {
//允许父View进行事件拦截
getParent.requestDisallowInterceptTouchEvent(false);
}else {
//禁止父View进行事件拦截
getParent.requestDisallowInterceptTouchEvent(true);
}
0 0
- View子布局和父布局滑动冲突时的处理
- requestDisallowInterceptTouchEvent解决子View和父View滑动的冲突
- View滑动冲突的处理
- View的滑动冲突处理
- 自定义View,包括事件分发,滑动冲突,测量以及布局
- android 中View测量,布局和滑动的属性区分
- View滑动冲突处理
- View的滑动方式及冲突处理
- ViewPager禁止手势滑动、解决和子View的滑动冲突
- 解决子view加点击后父布局不能滑动问题
- 下拉刷新和viewPager左右滑动冲突,下拉刷新和banner滑动布局滑动冲突
- android XML布局和子View按比例布局
- android XML布局和子View按比例布局
- 父布局与子布局控件的实现响应点击事件冲突问题。
- 控制 父布局上的 子View 边界
- View 滑动冲突处理方法
- view 的滑动冲突
- View的滑动冲突
- 09C#基础知识
- 10C#基础知识
- iOS - Swift 设置navigationItem
- 算法第四版习题1.1.32,直方图
- 神奇的动态规划---酒鬼(openjudge)
- View子布局和父布局滑动冲突时的处理
- BZOJ 4698 Sdoi2008 Sandy的卡片
- 包含min的栈
- Localtunnel内网穿透工具的安装与使用
- 初识HTML(三)
- 动态规划:最长回文字符串
- Python搭建机器学习环境+库的使用方法+一些示例
- OJ (1967): C/C++经典程序训练5---图形打印问题
- Android中Service完全解析