1.
String htmlContent = StringEscapeUtils.unescapejava(data);// String m = "src=";// htmlContent = htmlContent.replaceAll(m, "src=/"" + Constants.IMAGE_URL);Document doc = Jsoup.parse(htmlContent);Elements elem_img = doc.getElementsByTag("img");// 圖片自適應(yīng)屏幕if (elem_img.size() != 0) {for (Element el_img : elem_img) {el_img.attr("style", "width:100%");}}htmlContent = doc.toString();webview.loadData(htmlContent, "text/html; charset=UTF-8", null);webview.getSettings().setDefaultTextEncodingName("UTF-8");// 設(shè)置默認(rèn)為utf-8 2.String html = response.getContent();if (html.contains("src=/"/public")){ html = html.replace("src=/"/public", "src="+"/""+Config.WEB_HOST+"/""+"+/"/public");}showWebView(html);PRivate void showWebView(String html){ // 設(shè)置WevView要顯示的網(wǎng)頁 webviewArticleContent.getSettings().setJavaScriptEnabled(true);//設(shè)置支持Javascript webviewArticleContent.getSettings().setBlockNetworkImage(false); webviewArticleContent.requestFocus();//觸摸焦點(diǎn)起作用.如果不設(shè)置,則在點(diǎn)擊網(wǎng)頁文本輸入框時(shí),不能彈出軟鍵盤及不響應(yīng)其他的一些事件。 webviewArticleContent.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN); if(Build.VERSION.SDK_INT>=Build.VERSION_CODES.LOLLIPOP){ webviewArticleContent.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW); } // luntanListview.getSettings().setBuiltInZoomControls(true); //頁面添加縮放按鈕 // luntanListview.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY); //取消滾動條 // 點(diǎn)擊鏈接由自己處理,而不是新開Android的系統(tǒng)browser響應(yīng)該鏈接。 webviewArticleContent.setWebViewClient(new WebViewClient(){ @Override public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error){ //注意:super句話一定要?jiǎng)h除,或者注釋掉,否則又走h(yuǎn)andler.cancel()默認(rèn)的不支持https的了。 //super.onReceivedSslError(view, handler, error); //handler.cancel(); // Android默認(rèn)的處理方式 //handler.handleMessage(Message msg); // 進(jìn)行其他處理 handler.proceed(); // 接受所有網(wǎng)站的證書 } @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } }); String CSS_STYPE = "<head><style>img{max-width:100% !important;} table{max-width:100% !important;}</style></head>"; webviewArticleContent.loadDataWithBaseURL(null, CSS_STYPE + html, "text/html", "utf-8", null); // luntanListview.setOnFocusChangeListener(new View.OnFocusChangeListener() { // @Override // public void onFocusChange(View v, boolean hasFocus) { // if (hasFocus) { // try { // // 禁止網(wǎng)頁上的縮放 // Field defaultScale = WebView.class // .getDeclaredField("mDefaultScale"); // defaultScale.setaccessible(true); // defaultScale.setFloat(luntanListview, 1.0f); // } catch (SecurityException e) { // e.printStackTrace(); // } catch (IllegalArgumentException e) { // e.printStackTrace(); // } catch (IllegalAccessException e) { // e.printStackTrace(); // } catch (NoSuchFieldException e) { // e.printStackTrace(); // } // } // } // });}
新聞熱點(diǎn)
疑難解答