Android ScrollView嵌套X5WebView大片空白问题

server/2025/1/15 19:26:37/

scrollview嵌套后webview的高度不可控。留有大片空白。

注:官方不建议scrollview嵌套webview 最好让webview自身滚动

解决方案:

act_news_detail_wv.setWebViewClient(new WebViewClient() {@Overridepublic void onPageFinished(WebView webView, String s) {super.onPageFinished(webView, s);new Handler.postDelayed(new Runnable() {@Overridepublic void run() {                         webView.loadUrl("javascript:AndroidWebView.resize(document.body.getBoundingClientRect().height)");}}, 800);}}
}

1. 在页面加载完成之后让页面重新刷新高度

有些视频封面图较短,视频较长,部分手机视频加载之后刷新页面,高度不同导致视频截断,不能根本解决问题,弃用该方法

2. 富文本加载可直接改变富文本将想加入的内容加入 减少层级 从而不使用scrollview

能解决问题,但实际APP开发中总是碰到需要嵌套的需求

3. 富文本最好带有标签 没有可以代码加入

private String getHtmlData(String bodyHTML) { String head = "<head>" + "<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, user-scalable=no\"> " + "<style>img{max-width: 100%; width:auto; height:auto;}" + "video{max-width: 100%; width:auto; height:auto;}</style>" + "</head>";         return "<html>" + head + "<body>" + bodyHTML + "</body></html>"; 
}

能解决问题,html代码中img和video标签不要另外设置width和height属性,不然还是会出现空白

4. 网页加载可选择原生的webview。


http://www.ppmy.cn/server/158636.html

相关文章

君正ISP记录三:AE与AWB衍生功能“软光敏“

一、软光敏介绍 消费类摄像机&#xff0c;一般都存在全彩模式和黑白模式&#xff0c;即环境照度较高画面全彩&#xff0c;环境照度较低 画面黑白、开红外补光灯。这时候涉及一个切换问题&#xff0c;如何判断当前的环境照度。 最开始使用的都是硬光敏&#xff0c;即光敏电阻&am…

软件系统分析与设计综合实践-家庭维修服务系统小程序(代码见附录,私发)

摘 要 随着信息技术和网络技术的飞速发展&#xff0c;人类已进入全新信息化时代&#xff0c;传统管理技术已无法高效&#xff0c;便捷地管理信息。为了迎合时代需求&#xff0c;优化管理效率&#xff0c;各种各样的管理系统应运而生&#xff0c;各行各业相继进入信息管理时代…

Java堆内存分析

(一)、线上查看堆内存统计 # 命令用于打印堆内存中每个类的实例数量及其占用的内存&#xff0c;并且只包括活动对象&#xff08;即存活的对象&#xff09; jmap -histo:live <pid># 输出到文件方便查看 jmap -histo:live 12345 > aaa.txt(二)、下载dump文件&#xff0…

Microsoft Sql Server 2019 函数理解

说到函数&#xff0c;首先和存储过程作个比较吧&#xff0c;两者有一个共同点都是预编译优化后存储在磁盘中&#xff0c;所以效率 要比T-SQL高一点点。值得注意的是&#xff0c;存储过程可以创建或访问临时表&#xff0c;而函数不可以&#xff1b; 同时函数不可 以修改表中的数…

springcloud负载均衡原理

Spring Cloud负载均衡的原理主要涉及到客户端负载均衡的实现方式&#xff0c;特别是在微服务架构中如何均匀分配请求到多个服务实例上。以下是Spring Cloud负载均衡的详细原理&#xff1a; 1. 负载均衡概述 负载均衡&#xff08;Load Balancing&#xff09;是在分布式系统中&…

Oracle+11g+笔记(9)-控制文件及日志文件的管理

Oracle11g笔记(9)-控制文件及日志文件的管理 9、控制文件及日志文件的管理 Oracle 数据库包含有三种类型的物理文件&#xff0c;分别是数据文件、控制文件和日志文件&#xff0c;其中数据文件是用来存储数 据的&#xff0c;而控文件和日志文件则用于维护和保障 Oracle 数据库…

selenium在Linux环境下截屏(save_screenshot)中文乱码的问题

在Linux环境下会browser.save_screenshot方法保存的图片中中文乱码&#xff0c;不便于排查问题&#xff0c;解决办法如下&#xff1a; 1、设置浏览器options选项 options.add_argument("--langzh-CN") # 设置语言为中文 2、安装中文字体 apt-get update apt-get in…

GitLab CI/CD使用runner实现自动化部署前端Vue2 后端.Net 7 Zr.Admin项目

1、查看gitlab版本 建议安装的runner版本和gitlab保持一致 2、查找runner 执行 yum list gitlab-runner --showduplicates | sort -r 找到符合gitlab版本的runner&#xff0c;我这里选择 14.9.1版本 如果执行出现找不到下载源&#xff0c;添加官方仓库 执行 curl -L &quo…