WebView webView = (WebView) findViewById(R.id.webwiew_info); Pattern p = Pattern.compile("<img[^>]+src\\s*=\\s*['\"]([^'\"]+)['\"][^>]*>"); Matcher m = p.matcher(data); while(m.find()){ String img = "<img width='100%' src='"+m.group(1)+"' />"; data = data.replaceAll(m.group(), img); Log.w("img = ",m.group() + "-------------↓↓↓↓↓↓"); } private void initWebView(String data) { mHandler = new Handler(); webViewSetting(); webView.loadDataWithBaseURL("", data, "text/html", "UTF-8", ""); webView.setWebViewClient(new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { // 返回值是true的時候控制去WebView打開,爲false調用系統瀏覽器或第三方瀏覽器 view.loadUrl(url); return true; } }); } private void webViewSetting() { WebSettings webSettings = webView.getSettings(); webSettings.setJavaScriptEnabled(true); //自適應屏幕 webSettings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN); webSettings.setUseWideViewPort(true);// 設置此屬性,可任意比例縮放 webSettings.setSupportZoom(true);// 支持縮放 webSettings.setLoadWithOverviewMode(true); webSettings.setBuiltInZoomControls(true); webSettings.setDefaultFontSize(18); // DocumentsContract.Document doc_Dis = Jsoup.parse(htmlContent); // Elements ele_Img = doc_Dis.getElementsByTag("img"); // if (ele_Img.size() != 0){ // for (Element e_Img : ele_Img) { // e_Img.attr("style", "width:100%"); // } // } // String newHtmlContent=doc_Dis.toString(); // webView.loadDataWithBaseURL("", newHtmlContent, "text/html", "UTF-8", ""); } // 改寫物理按鍵——返回的邏輯 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK) { if (webView.canGoBack()) { webView.goBack();// 返回上一頁面 Log.e("onKeyDown", "onKeyDown111111"); return true; } else { Log.e("onKeyDown", "onKeyDown000000"); // System.exit(0);// 退出程序 GraphicInfoActivity.this.finish(); GraphicInfoActivity.this.onDestroy(); } } return super.onKeyDown(keyCode, event); }