日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android WebView 图片超出宽度自适应,点击查看大图

發(fā)布時間:2023/12/4 Android 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android WebView 图片超出宽度自适应,点击查看大图 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

?

webView?配置?

WebSettings webSettings = webView.getSettings(); webSettings.setJavaScriptCanOpenWindowsAutomatically(true);webSettings.setDomStorageEnabled(true);webSettings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN);//自適應(yīng)屏幕 ☆☆webSettings.setDisplayZoomControls(false);webSettings.setJavaScriptEnabled(true); // 設(shè)置支持javascript腳本 ☆☆webSettings.setAllowFileAccess(true); // 允許訪問文件webSettings.setBuiltInZoomControls(true); // 設(shè)置顯示縮放按鈕webSettings.setSupportZoom(true); // 支持縮放webSettings.setLoadWithOverviewMode(true);webSettings.setUseWideViewPort(true);

?Android處理事件(ImgTool.java)

public static class JavaScriptInterface {private Context context;public JavaScriptInterface(Context context) {this.context = context;}//點擊圖片回調(diào)方法//必須添加注解,否則無法響應(yīng)@JavascriptInterfacepublic void openImage(String imgsrc) { Bitmap bitmap = null;try{bitmap = BitmapFactory.decodeStream(new URL(imgsrc).openStream());} catch (IOException e){e.printStackTrace();}Drawable drawable;if (bitmap != null){drawable = new BitmapDrawable(context.getResources(), bitmap);//彈出個全屏窗口打開圖片對象 自己寫就行了//ImgTool.ViewImg((Activity) context,drawable);}}}

重寫?onPageFinished?注入js

webView.setWebViewClient(new WebViewClient(){@Overridepublic void onPageFinished(WebView view, String url){super.onPageFinished(view, url);/*** 對圖片進(jìn)行重置大小,寬度就是手機屏幕寬度,高度根據(jù)寬度比便自動縮放**/webView.loadUrl("javascript:(function(){"+ "var objs = document.getElementsByTagName('img'); "+ "for(var i=0;i<objs.length;i++) "+ "{"+ "var img = objs[i]; "+ " img.style.maxWidth = '100%'; img.style.height = 'auto'; "+ "}"+ "})()");// html加載完成之后,添加監(jiān)聽圖片的點擊js函數(shù)webView.loadUrl("javascript:(function(){"+ "var objs = document.getElementsByTagName(\"img\"); "+ "for(var i=0;i<objs.length;i++) "+ "{"+ " objs[i].onclick=function() "+ " { "+ " window.imagelistner.openImage(this.src); "+ " } "+ "}"+ "})()");} }); //AndroidtoJS類對象映射到j(luò)s的openImage對象 YourActivity 也就是當(dāng)前的activitywebView.addJavascriptInterface(new ImgTool.JavaScriptInterface(YourActivity.this), "imagelistner");webView.loadUrl(url);

?

總結(jié)

以上是生活随笔為你收集整理的Android WebView 图片超出宽度自适应,点击查看大图的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。