首页 > 其他分享 >Android WebView 加载 html页面 实现 不同分辨率 不同 dpi 缩放自适应处理 解决方案

Android WebView 加载 html页面 实现 不同分辨率 不同 dpi 缩放自适应处理 解决方案

时间:2024-05-15 17:30:45浏览次数:18  
标签:缩放 分辨率 zoom html widthPixels heightPixels Android dpi

两种情况一起使用 实现 不同分辨率 不同 dpi 缩放自适应处理

//webview 需要配置
mWebView.getWebSetting().setUseWideViewPort(true);//让webview读取网页设置的viewport,pc版网页

1、同分辨率 不同dpi 缩放自适应处理 ( 也可以在android端 注入相关js 代码)

<script type="text/javascript">
<!-- 针对 Android 【不同 dpi】 适配处理 同分辨率 不同 dpi 显示一致 -->
var ua = navigator.userAgent;
if (/Android (\d+\.\d+)/.test(ua)){
<!-- 需要在页面加载时候 生效 才能有效 -->
var devicePixelRatio = window.devicePixelRatio;
var deviceScale = 1/devicePixelRatio;
document.write('<meta name="viewport" content="width=device-width,initial-scale='+deviceScale+',minimum-scale='+deviceScale+',maximum-scale='+deviceScale+',user-scalable=no">');
}
</script>

2、同dpi 不同分辨率 缩放自适应处理

   @Override
            public void onPageFinished(WebView webView, String url) {
                super.onPageFinished(webView, url);


                /**
                 * 针对 web 页面 【不同分辨率】 适配处理   同dpi 不同分辨率 显示一致
                 *  zoom = 100%    分辨率 1920 * 1080   Ui设置设计出来合适的 也是body标签默认未设置zoom属性的或者100%  例子 <body style="zoom: 50%;">
                 *  zoom = 66.67%     分辨率 1280 * 720
                 *  zoom = 71.14%     分辨率 1366 * 768
                 *  zoom = 106.67%     分辨率 2048 * 1152
                 *  zoom = 83.33%     分辨率 1600 * 900
                 *  zoom = 50%     分辨率 960 * 540
                 */
                float widthPixels = getResources().getDisplayMetrics().widthPixels;
                float heightPixels = getResources().getDisplayMetrics().heightPixels;
                Log.d("zfq", "widthPixels:" + widthPixels);
                Log.d("zfq", "heightPixels:" + heightPixels);
                float zoomPercent = widthPixels / 1920 * 100;
                Log.d("zfq", "zoomPercent:" + zoomPercent);
                String javaScriptInterfaceName_zoomWeb_NeedInjectJsStr =
                        "javascript:(function(){  document.body.style.zoom='" + zoomPercent + "%'; })()";
                mWebView.loadUrl(javaScriptInterfaceName_zoomWeb_NeedInjectJsStr);
            }

标签:缩放,分辨率,zoom,html,widthPixels,heightPixels,Android,dpi
From: https://www.cnblogs.com/scale/p/18194362

相关文章

  • 2-HTML语法规范和基本结构
    基本语法概述HTML标签是由尖括号包围的关键字,例如<html>。HTML标签通常是成对出现的,例如<html>和</html>,我们称为双标签。标签对中第一个是开始标签,第二个是结束标签。有些特殊的标签必须是单个标签,例如<br/>,我们称为单标签。标签关系包含关系点击查看代码<body>......
  • 高DPI下windows远程桌面缩放问题
    第一步:打开注册表:HKEY_LOCAL_MACHINE>SOFTWARE>Microsoft>Windows>CurrentVersion>SideBySide新建DWORD(32bit)的项,命名为:PreferExternalManifest,打开PreferExternalManifest,将值设为1,16进制。第二步打开记事本输入如下代码:<?xmlversion="1.0"encoding=&quo......
  • vscode新建html文件并快速生成标准的html代码
    1.打开vscode,点击OpenFolder2.选择目标文件夹,新建一个扩展名为.html的文件:3.在第一行输入!(英文状态下),按tab键,新建成功。界面如下图所示:......
  • 实现bmp格式图片的2倍缩小功能,并输出新的目标bmp格式文件。最后利用800*480的开发板,展
    /***********************************************************************************************************实现bmp格式图片的2倍缩小功能,并输出新的目标bmp格式文件。最后利用800*480的开发*板,展示缩放后的bmp文件****Copyright(c)2023-202418975491291......
  • HTML 06 - Formatting
     Ifyouuseawordprocessor,youmustbefamiliarwiththeabilitytomaketextbold,italicized,orunderlined;thesearejustthreeofthetenoptionsavailabletoindicatehowtextcanappearinHTMLandXHTML.BoldTextAnycontentenclosedwithin&......
  • HTML 07 - Headings
    HTMLheadingsareusedtodefinethehierarchy(levels)andstructureofcontentonawebpage.Theycreateavisualhierarchy,withthehighestlevelheadingwhichish1indicatingthemostimportantcontentorthemainheading,andlower-levelheadings......
  • HTML 05 - Attributes
    HTML05-AttributesWehaveseenfewHTMLtagsandtheirusagelikeheadingtags<h1>,<h2>,paragraphtag<p>andothertags.Weusedthemsofarintheirsimplestform,butmostoftheHTMLtagscanalsohaveattributes,whichareext......
  • HTML 04 - Elements
    HTMLElementsarebuildingblockofawebpage.Itisusedtocreatecomponentforwebpages.HTMLdocumentsconsistofatreeoftheseelementsandtheyspecifyhowHTMLdocumentsshouldbebuilt,andwhatkindofcontentshouldbeplacedwithinvariousp......
  • HTML 03 - Basic Tags
    HTML-BasicTags HTMLtagsarethefundamentalelementsofHTMLusedfordefiningthestructureofthedocument.Thesearelettersorwordsenclosedbyanglebrackets(<and>).Usually,mostoftheHTMLtagscontainsanOpeningandaClosingtag......
  • HTML 02 - Editors
    HTML-EditorsTolearnHTMLwewillrecommendyoutouseatexteditorlikeNotepad,becauseaNotepadwillhelpyoutounderstandtherequirementofeachtag,itwillnotsuggestanythingonitsownthatwillbehelpfultounderstandtheHTMLsyntax. ......