Android解决viewpager嵌套滑动冲突并保留侧滑菜单功能

发布时间 - 2026-01-11 02:04:07    点击率:

重写子pagerview的dispatchTouchEvent方法,在返回前添加一句getParent().requestDisallowInterceptTouchEvent(true)中断掉事件的传递,类如下

public class SupperViewPager extends ViewPager {
 private int screenWidth;//屏幕宽度
 public SupperViewPager(Context context) {
  super(context);
 }
 public SupperViewPager(Context context, AttributeSet attrs) {
  super(context, attrs);
  // TODO 自动生成的构造函数存根
 }
 @Override
 protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
  super.onMeasure(widthMeasureSpec, heightMeasureSpec);
  screenWidth = MeasureSpec.getSize(widthMeasureSpec);//view测量时获取屏幕宽度
 }
 @Override
 public boolean dispatchTouchEvent(MotionEvent ev) {
  // screenWidth = getResources().getDisplayMetrics().widthPixels;
  System.out.println("屏幕宽度" + screenWidth);
  /*判断屏幕是否满足一定条件,满足则中断时间
  即,两边各留出一定宽度使靠边滑动时可以相应父pagerview 的事件,例如左边有侧滑菜单,右边靠边可以滑到另一个父viewpager的下一个*/
  if (ev.getRawX() > screenWidth / 8 && ev.getRawX() < screenWidth * 7 / 8) {
   getParent().requestDisallowInterceptTouchEvent(true);
  }
  return super.dispatchTouchEvent(ev);
 }
}

以上所述是小编给大家介绍的Android解决viewpager嵌套滑动冲突并保留侧滑菜单功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# android  # viewpager  # 嵌套滑动  # 侧滑  # Android嵌套滑动冲突的解决方法  # 详解Android中的NestedScrolling机制带你玩转嵌套滑动  # Android中RecyclerView嵌套滑动冲突解决的代码片段  # Android深入探究自定义View之嵌套滑动的实现  # 小编  # 一句  # 在此  # 给大家  # 重写  # 所述  # 给我留言  # 自动生成  # 感谢大家  # 滑到  # 疑问请  # 有任何  # SupperViewPager  # int  # private 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Android利用动画实现背景逐渐变暗  如何快速查询域名建站关键信息?  如何在阿里云通过域名搭建网站?  详解vue.js组件化开发实践  实例解析angularjs的filter过滤器  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  Laravel怎么实现API接口鉴权_Laravel Sanctum令牌生成与请求验证【教程】  Laravel如何实现本地化和多语言支持_Laravel多语言配置与翻译文件管理  JS实现鼠标移上去显示图片或微信二维码  Laravel如何实现本地化和多语言支持?(i18n教程)  香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南  进行网站优化必须要坚持的四大原则  Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】  Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】  如何用狗爹虚拟主机快速搭建网站?  javascript基于原型链的继承及call和apply函数用法分析  网站制作壁纸教程视频,电脑壁纸网站?  JS经典正则表达式笔试题汇总  如何在阿里云高效完成企业建站全流程?  Laravel队列由Redis驱动怎么配置_Laravel Redis队列使用教程  LinuxCD持续部署教程_自动发布与回滚机制  Laravel如何实现用户注册和登录?(Auth脚手架指南)  济南网站建设制作公司,室内设计网站一般都有哪些功能?  Laravel的辅助函数有哪些_Laravel常用Helpers函数提高开发效率  小米17系列还有一款新机?主打6.9英寸大直屏和旗舰级影像  移动端脚本框架Hammer.js  Edge浏览器提示“由你的组织管理”怎么解决_去除浏览器托管提示【修复】  深圳网站制作培训,深圳哪些招聘网站比较好?  免费视频制作网站,更新又快又好的免费电影网站?  如何获取PHP WAP自助建站系统源码?  Laravel如何使用Sanctum进行API认证?(SPA实战)  如何用IIS7快速搭建并优化网站站点?  如何在阿里云部署织梦网站?  Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】  JavaScript实现Fly Bird小游戏  Laravel怎么实现搜索高亮功能_Laravel结合Scout与Algolia全文检索【实战】  如何快速生成高效建站系统源代码?  大连 网站制作,大连天途有线官网?  武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?  昵图网官方站入口 昵图网素材图库官网入口  如何用搬瓦工VPS快速搭建个人网站?  装修招标网站设计制作流程,装修招标流程?  Laravel Docker环境搭建教程_Laravel Sail使用指南  为什么要用作用域操作符_php中访问类常量与静态属性的优势【解答】  JavaScript常见的五种数组去重的方式  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  晋江文学城电脑版官网 晋江文学城网页版直接进入  Android okhttputils现在进度显示实例代码  Laravel安装步骤详细教程_Laravel环境搭建指南  HTML5空格在Angular项目里怎么处理_Angular中空格的渲染问题【详解】