详解Android WebView加载html片段
短信预约 -IT技能 免费直播动态提醒
这里我先简单描述一下需求:服务器返回的是html页面的一部分带有标签的内容。
解决的思路是:将服务器返回的内容片段拼凑成一个完整的页面。
下面直接上核心代码:
这里是WebView一些配置
WebSettings settings = webView.getSettings();settings.setJavaScriptEnabled(true);settings.setDomStorageEnabled(true);settings.setUseWideViewPort(true);settings.setLoadWithOverviewMode(true);webView.setWebViewClient(new MyWebViewClient(activity));if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { settings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.TEXT_AUTOSIZING);} else { settings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NORMAL);}webView.loadData(getHtmlData(item.content), "text/html;charset=utf-8","utf-8");private String getHtmlData(String bodyHTML) { String head = "<head>" + "<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, user-scalable=no\"> " + "<style>html{padding:15px;} body{word-wrap:break-word;font-size:13px;padding:0px;margin:0px} p{padding:0px;margin:0px;font-size:13px;color:#222222;line-height:1.3;} img{padding:0px,margin:0px;max-width:100%; width:auto; height:auto;}</style>" + "</head>"; return "<html>" + head + "<body>" + bodyHTML + "</body></html>"; }static class MyWebViewClient extends WebViewClient{ private WaitingDialog dialog; private Activity activity; public MyWebViewClient(Activity activity){ dialog = new WaitingDialog(activity); this.activity = activity; } @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { LogUtil.e(url); view.loadUrl(url); return true; } @Override public void onPageStarted(WebView view, String url, Bitmap favicon) { super.onPageStarted(view, url, favicon); if(!activity.isFinishing()) dialog.show(); } @Override public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) { handler.proceed(); super.onReceivedSslError(view, handler, error); } @Override public void onPageFinished(WebView view, String url) { super.onPageFinished(view, url); if(!activity.isFinishing()) dialog.dismiss(); }
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
详解Android WebView加载html片段
下载Word文档到电脑,方便收藏和打印~
下载Word文档
猜你喜欢
详解Android WebView加载html片段
这里我先简单描述一下需求:服务器返回的是html页面的一部分带有标签的内容。解决的思路是:将服务器返回的内容片段拼凑成一个完整的页面。下面直接上核心代码:这里是WebView一些配置WebSettings settings = webVie
2023-05-30
怎么在webView中加载html图片
这篇文章给大家介绍怎么在webView中加载html图片,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。当解析接口 突然出现一个xml形式的html格式的字符串的时候不用慌张,正常去交给webview的loaddata方
2023-06-09
测试Android webview 加载本地html
最近开发一个需要未联网功能的App, 不熟悉使用Java原生开发界面,于是想使用本地H5做界面,本文测试了使用本地html加载远程数据。直接上代码: MainActivity.java package com.alex.webviewloc
2023-12-23
Android Webview添加网页加载进度条实例详解
推荐阅读:Android WebView线性进度条实例详解
最近在android项目中使用webview嵌套了一个抽奖活动网页,活动上线,运行良好(改了N次需求和突发bug),还好这种模式的活动,只需要修改网页,不需要重新打包发布市场,这也
2022-06-06
Android Volley图片加载功能详解
Gituhb项目
Volley源码中文注释项目我已经上传到github,欢迎大家fork和start.
为什么写这篇博客
本来文章是维护在github上的,但是我在分析ImageLoader源码过程中与到了一个问题,希望大家能帮助解答.
V
2022-06-06
详解Android Webview加载网页时发送HTTP头信息
详解Android Webview加载网页时发送HTTP头信息当你点击一个超链接进行跳转时,WebView会自动将当前地址作为Referer(引荐)发给服务器,因此很多服务器端程序通过是否包含referer来控制盗链,所以有些时候,直接输入
2023-05-31
Android ListView异步加载图片方法详解
本文实例讲述了Android ListView异步加载图片方法。分享给大家供大家参考,具体如下:
先说说这篇文章的优点把,开启线程异步加载图片,然后刷新UI显示图片,而且通过弱引用缓存网络加载的图片,节省了再次连接网络的开销。
这样做无疑是
2022-06-06
Android开发如何实现webview中img标签加载本地图片
这篇文章主要介绍Android开发如何实现webview中img标签加载本地图片,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!具体如下:在网上查了很多教程,感觉很麻烦,各种方法,最后实践很简单,主要是两步:WebSe
2023-05-30
2024-04-02
详解Android GLide图片加载常用几种方法
这篇文章主要为大家介绍了详解Android GLide图片加载常用几种方法,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
2022-11-16
2023-10-02
Android加载html中svg格式图片进行显示
最近做的一个项目是把assets目录中的html显示出来,但是因为html里面有一些工程图片,虽然我用ViewPager和PhotoView,进行显示放大了,但是因为工程图片的线条较多还是比较模糊.所以后来就想用svg图片来进行显示,至于s
2023-05-31
Android加载View中Background详解
对大多数Android的开发者来说,最经常的操作莫过于对界面进行布局,View中背景图片的加载是最经常做的。但是我们很少关注这个过程,这篇文章主要解析view中背景图片加载的流程。了解view中背景图片的加载(资源的加载)可以让我们对资源加
2022-06-06
Android webview加载https链接错误或无响应的解决
最近做无线WiFi的时候,在最后认证成功的时候会弹出一个广告页,于是用webview去加载了一下,结果没反应,打印url出来看了一下,发现是https格式的,在使用WebView加载https资源文件时,如果认证证书不被Android认可,
2022-06-06
Android webView加载数据时内存溢出问题及解决
这篇文章主要介绍了Android webView加载数据时内存溢出问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
2022-12-08
详解Android之图片加载框架Fresco基本使用(二)
PS:最近看到很多人都开始写年终总结了,时间过得飞快,又到年底了,又老了一岁。学习内容:
1.进度条
2.缩放
3.ControllerBuilder,ControllerListener,PostProcesser,Image Reque
2022-06-06
Android中WebView加载的网页被放大的解决办法
在某些大分辨率下,我们用WebView加载的网页可能会出现被放大的现象,这显然不是我们想要的结果,我开始看WebSettings这个是否可以设置不缩放,webSettings.setBuiltInZoomControls(false),我发
2022-06-06
详解Android 教你打造高效的图片加载框架
1、概述优秀的图片加载框架不要太多,什么UIL , Volley ,Picasso,Imageloader等等。但是作为一名合格的程序猿,必须懂其中的实现原理,于是乎,今天我就带大家一起来设计一个加载网络、本地的图片框架。有人可能会说,自己
2022-06-06
详解Android之图片加载框架Fresco基本使用(一)
PS:Fresco这个框架出的有一阵子了,也是现在非常火的一款图片加载框架.听说内部实现的挺牛逼的,虽然自己还没研究原理.不过先学了一下基本的功能,感受了一下这个框架的强大之处.本篇只说一下在xml中设置属性的相关用法.
0.引入Fresc
2022-06-06
2024-04-02