AndoridWebView内容自适应并改变图片大小-创新互联

关键部分:

创新互联自2013年创立以来,先为石峰等服务建站,石峰等地企业,进行企业商务咨询服务。为石峰企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
<meta name="viewport" content="width=device-width, initial-scale=1">

webview.loadUrl("javascript:var imgs=document.getElementsByTagName('img');for(var i=0;i<imgs.length;i++){imgs[i].style.width='320px';};void(0);");

需要在加载的HTML中在<head></head>标签中加入这句话,用于页面适应手机屏幕;

loadUrl函数是通过模拟a标签跳转时的时候调用JS脚本,以完成注入的目的;

测试HTML内容代码:

<html>
    <head>
        <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">
    </head>
    <body>
        <img src=\"/wyfs02/M02/45/DA/wKioL1PsdWqTvMWZAABqd73eyHI527_middle.jpg\"/>
        <img src=\"/wyfs02/M02/45/DA/wKioL1PsdWqTvMWZAABqd73eyHI527_middle.jpg\"/>
        <img src=\"/wyfs02/M02/45/DA/wKioL1PsdWqTvMWZAABqd73eyHI527_middle.jpg\"/>
        <img src=\"/wyfs02/M02/45/DA/wKioL1PsdWqTvMWZAABqd73eyHI527_middle.jpg\"/>
    </body>
</html>

Android Class WebView代码:

String content = "<html><head><meta name=\"viewport\" content=\"width=device-width, initial-scale=1\"></head><body><img src=\"/wyfs02/M02/45/DA/wKioL1PsdWqTvMWZAABqd73eyHI527_middle.jpg\"/><img src=\"/wyfs02/M02/45/DA/wKioL1PsdWqTvMWZAABqd73eyHI527_middle.jpg\"/><img src=\"/wyfs02/M02/45/DA/wKioL1PsdWqTvMWZAABqd73eyHI527_middle.jpg\"/><img src=\"/wyfs02/M02/45/DA/wKioL1PsdWqTvMWZAABqd73eyHI527_middle.jpg\"/></body></html>";
webview = (WebView) findViewById(R.id.demoView);
webview.getSettings().setJavaScriptEnabled(true);
webview.loadDataWithBaseURL("https://s3.51cto.com", content, "text/html", "utf-8", null);
webview.setWebViewClient(new WebViewClient(){
    @Override
    public void onPageFinished(WebView view, String url)
    {
        super.onPageFinished(view, url);
        webview.loadUrl("javascript:var imgs=document.getElementsByTagName('img');for(var i=0;i<imgs.length;i++){imgs[i].style.width='320px';};void(0);");
    }
});

Android Activity 代码:

<android.webkit.WebView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/demoView"
    ></android.webkit.WebView>

Android AndroidManifest.xml 写入相关权限

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.demo" >

    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    
    .....
</manifest>

注意事项:

1、权限不能忘记了,要不然访问请求不到页面;

2、网页描述那一段最好加上“<meat name=....”这段;

webview.loadUrl("javascript:var imgs=document.getElementsByTagName('img');for(var i=0;i<imgs.length;i++){imgs[i].style.width='320px';};void(0);");

JS脚本注入后面加上 void(0),因为页面会跳转所以根据以前的前端经验我加上了这一句,至于为什么模拟A标签的时候写了javascript:xxxx,页面还是会跳转请路过高手们能告诉我感激不尽

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。

当前名称:AndoridWebView内容自适应并改变图片大小-创新互联
分享链接:https://www.cdcxhl.com/article38/hihsp.html

成都网站建设公司_创新互联,为您提供网站收录面包屑导航微信公众号手机网站建设建站公司云服务器

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

搜索引擎优化