pb自定义控件 事件_Android WebView与下拉刷新控件滑动冲突的解决方法

  使用WebView时一般会在外层使用下拉刷新控件如(SwipeRefreshLayout)。但是测试时会发现网页无法上拉,往上滑动就会触发下拉刷新控件的refresh事件。所以这里记录一下解决该问题的办法。

   1、通过webView.getScrollY() 的值来判断是否滚动到顶部

private SwipeRefreshLayout mSwipe;
mSwipe.setColorSchemeResources(R.color.green_ying_guang, R.color.goods_price_size, R.color.colorRed);/* * 设置下拉刷新的监听 */mSwipe.setOnRefreshListener(() -> {//刷新需执行的操作    webView.reload();    mSwipe.setRefreshing(false);});mSwipe.setOnChildScrollUpCallback(new SwipeRefreshLayout.OnChildScrollUpCallback() {@Override    public boolean canChildScrollUp(@NonNull SwipeRefreshLayout swipeRefreshLayout, @Nullable View view) {        return webView.getScrollY()>0;

}

});

这方法适用于html端是一个类似于线性布局的,内部控件没有上下滑动的监听。如果html内部有控件监听了上下滑动,就会有滑动冲突,所以需要方法2来解决。

2、自定义webview

在onTouchEvent中监听DOWN事件,然后设置mScrolly的值为1,这样在子布局消耗完滑动事件前,mScrolly的值一直为1,SwipeRefreshLayout就不会拦截滑动事件(方法1中设置了mScrolly>0时不拦截)

@Overridepublic boolean onTouchEvent(MotionEvent event) {switch (event.getAction()) {case MotionEvent.ACTION_DOWN:if (this.getScrollY() <= 0)this.scrollTo(0, 1);            break;        default:break;    }return super.onTouchEvent(event);}

以上方法试用于绝大多数的webview下拉刷新滑动冲突,如果有不适用的,请联系作者。

55b5b3527688e18758210296d7b00bec.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/504938.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

双路服务器cpu必须型号相同,双路主板存在使用不同型号的cpu之说吗?还是必须使用一模一样相同的cpu型号?...

双路主板不存在使用不同型号的cpu一说&#xff0c; 可以使用不同型号的cpu&#xff0c; 不过参数差别不能过大(例如处理器的架构差别)多路主板就是一种主从结构&#xff0c; 处理器之间是协同工作&#xff0c;由中间的高速总线实现两个处理器的配合&#xff0c;不存在处理器必须…

打开多个界面_如何创建用户界面

CANBusKit&#xff0c;是一款集成汽车总线开发、测试、分析的专业软件工具。本章内容主要介绍如何使用CBK_OpenPanel工具为CANBUSKIT 工程创建用户界面&#xff0c;本工具目前支持Vector的xvp格式的面板文件导入。首先是启动软件(试用版软件只能从CANBusKit软件界面中启动该软件…

python命令行解析_python命令行解析函数

sys.argv在终端运行python 1.py hahahimportsysprint(sys.argv) #[1.py, hahah]argparsePython的命令行解析模块&#xff0c;这是一个python的内置库&#xff0c;通过在程序中我们定义好的参数&#xff0c;argparse将会从sys.argv中解析出这些参数&#xff0c;并自动生成帮助和…

汤姆克兰西全境封锁服务器维护时间,汤姆克兰西全境封锁无法登录怎么解决 无法登录解决方法攻略...

《汤姆克兰西&#xff1a;全境封锁》是款大型射击游戏&#xff0c;这款游戏的画面十分的精致&#xff0c;在这款游戏中会有各种不同的任务&#xff0c;玩家要带着武器来进行射击。在游戏的时候很多玩家们都反映无法登录怎么解决&#xff1f;那么下面小编就为玩家们详细解说下关…

需要的依赖_三十而已:夫妻关系中需要的是坦诚和依赖

最近三十而已大热播&#xff0c;开始时很多人都看好顾佳和许幻山这一对&#xff0c;顾佳有才有颜&#xff0c;上得厅堂下得厨房&#xff0c;处理事情干净利索&#xff0c;是难得的贤内助。许幻山温柔帅气还有才&#xff0c;关键是还对老婆好&#xff0c;他们的组合可以说是很让…

python代码导出_代码生成 – Python生成Python

我有一组对象,我正在创建一个类,我想要将每个对象存储为自己的文本文件.我真的希望将其存储为一个Python类定义,它会分类我正在创建的主类.所以,我做了一些戳,并在effbot.org上找到了一个Python代码生成器.我做了一些实验,这里是我想出来的&#xff1a;## a Python code genera…

语言建立一个学生籍贯管理簿_编写一个Excel自定义函数,身份证信息提取如探囊取物...

观看视频更直观我们建立信息表时不仅要输入性别、生日和年龄等信息&#xff0c;往往也需要输入身份证号码&#xff0c;而身份证号码中包含有籍贯、性别、生日和年龄等信息&#xff0c;从身份证号码中提取上述信息可以减少输入工作量&#xff0c;提高工作效率。利用Excel中的内置…

python 32的值_示例解读 Python 2 和 Python 3 之间的主要差异

每门编程语言在发布更新之后&#xff0c;主要版本之间都会发生很大的变化。 在本文中&#xff0c;Vinodh Kumar 通过示例解释了 Python 2 和 Python 3 之间的一些重大差异&#xff0c;以帮助说明语言的变化。本教程主要介绍内容&#xff1a;表达式Print 选项Unequal 操作Range自…

原码一位乘法器设计_数字IC校招基础知识点复习(七)——超前进位加法器、Wallace树、Booth乘法器...

1.超前进位加法器看了一些面经&#xff0c;提到会让你用基础的门搭加法器&#xff0c;因此首先得熟悉半加器&#xff0c;全加器等最基础的加法器才能理解之后的超前进位加法器&#xff0c;树型加法器等复杂的加法器。半加器的输入为a&#xff0c;b&#xff0c;输出为结果s和进位…

保存点云数据_3D点云配准(二多幅点云配准)

本文首发于微信公众号「3D视觉工坊」&#xff1a;3&#xff24;点云配准&#xff08;二多幅点云配准&#xff09; 在上一篇文章 点云配准&#xff08;一 两两配准&#xff09;中我们介绍了两两点云之间的配准原理。本篇文章&#xff0c;我们主要介绍一下PCL中对于多幅点云连续配…

python 数字类型和字符串类型的相互转换_python 数字类型和字符串类型的相互转换...

{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],"search_count":[{"count_phone":4,"count":4}]},"card":[{"des":"阿里技术人对外发布原创技术内容的最大平台&…

url存在宽字节跨站漏洞_5分钟速览丨常见的Web安全漏洞及测试方法

中秋小长假“余额”就剩半天了尽管心里有太多不舍也要调整自己毕竟假期都是短暂的工作才是职场人生的常态为了尽快消除“假日综合症”e小安贴心送上小文一篇小伙伴们赶紧“脉动”回来吧各类web应用充斥在我们的网络生活中&#xff0c;但是因为开发者安全意识不强而导致的安全问…

9切换中文mac_超详细的Mac重装系统教程!让重装系统变得简单起来!

mac电脑该怎么重装系统&#xff1f;苹果电脑在长时间使用后&#xff0c;系统可能会变得比较慢&#xff0c;另外各种缓存垃圾也会越堆越多&#xff0c;影响电脑的反应速度。mac OS系统是苹果电脑独有的操作系统,重装mac系统过程和Win系统完全不同,所以第一次使用苹果电脑的用户都…

python允许无止境的循环_ParisGabriel:Python无止境 day03

print(“hello world”)变量 &#xff1a; 存储信息的&#xff0c;日后被调用、修改操作常量&#xff1a; 固定不变的量&#xff0c;字母大写命名规则&#xff1a;1. 字母数字下划线组成2. 不能以数字开头&#xff0c;不能含有特殊字符和空格3. 不能以保留字命名4. 不能以中文命…

delphi datasnap断线后再次连接_电脑连接WiFi后经常出现断线断开连接问题的解决方法...

电脑连接WiFi总是断线怎么办&#xff1f;有用户的笔记本在连接无线网络后&#xff0c;一直出现断线问题&#xff0c;并且网速也很慢&#xff0c;这是怎么回事&#xff1f;电脑连接WiFi后经常断开连接该如何解决&#xff1f;下面给大家分享具体操作步骤。操作步骤&#xff1a;1、…

linux系统安装python包_Linux系统安装Python

Linux系统处带的是Python2&#xff0c;一直用Python3.6Django2进行开发&#xff0c;于是在Linux上安装Python3,安装过程如下&#xff1a;(1)、在官网下载“Gzipped source tarball”版本&#xff0c;上传到&#xff1a;/usr/local/&#xff0c;然后解压tar包&#xff1a;tar -x…

python程序发布 ubuntu_在ubuntu16.04的虚拟环境中运行Python程序作为服务

我正在尝试让一个FlaskSocketIO应用程序作为一个服务在ubuntu16.04上运行&#xff0c;在一个虚拟环境中。我的服务器每天凌晨3点重新启动(超出我的控制范围)&#xff0c;所以我需要它在启动时自动启动。在运行脚本本身可以正常工作&#xff1a;$ python main.py(29539) wsgi st…

添加javascript代码:_JavaScript(1)

一、JavaScript组成1.ECMAScript&#xff1a;是ECMA制定的脚本语言的语法标准&#xff0c;基础语法的规范&#xff0c;为了让不同的浏览器都可以运行通过标准运行出来的代码。2.文档对象模型(DOM)&#xff1a;JavaScript操作网页上的元素(标签)的API。3.浏览器对象模型(BOM)&am…

win 8 共享连接数是多少_局域网IP限速怎么配置,限速多少比较合适

由于视频和下载可以轻易的占用大量带宽&#xff0c;为了网络的稳定运行&#xff0c;大部分局域网都会对客户端进行一定的限速。本文中&#xff0c;我将介绍如何根据带宽来做限速&#xff0c;限速设置多少比较合理&#xff1f;1. 限速多少比较合理&#xff1f;正常的办公上网&am…

华农软件工程实验报告_华南农业大学的软件工程怎么样?

2019.07.08 更新 就是从2016年开始&#xff0c;废除数学与信息学院的软件工程。取而代之的是&#xff0c;在软件学院开通一个新专业——软件工程(温氏阿里创新班)&#xff0c;所以现在软件学院就有两个专业了(软件工程、软件工程(温氏阿里创新班))。另外一个就是软件学院的实习…