Android:WebView加载Html格式字符串

[javascript]  view plain copy
  1. package com.example.htmltest2_webview;  
  2.   
  3. import java.lang.reflect.Field;  
  4. import java.util.logging.LogManager;  
  5.   
  6. import android.os.Bundle;  
  7. import android.app.Activity;  
  8. import android.text.Html;  
  9. import android.util.DisplayMetrics;  
  10. import android.util.Log;  
  11. import android.view.KeyEvent;  
  12. import android.view.Menu;  
  13. import android.view.View;  
  14. import android.webkit.WebSettings.LayoutAlgorithm;  
  15. import android.webkit.WebView;  
  16. import android.webkit.WebViewClient;  
  17.   
  18. public class MainActivity extends Activity  
  19. {  
  20.     private WebView luntanListview;  
  21.     private String html;  
  22.     public static DisplayMetrics displayMetrics;  
  23.       
  24.     @Override  
  25.     protected void onCreate(Bundle savedInstanceState)  
  26.     {  
  27.         super.onCreate(savedInstanceState);  
  28.         setContentView(R.layout.activity_main);  
  29.   
  30.         displayMetrics=getApplicationContext().getResources().getDisplayMetrics();  
  31.         luntanListview = (WebView) findViewById(R.id.webview);  
  32.           
  33.         html="<head><meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, user-scalable=0, minimum-scale=1.0, maximum-scale=1.0\"><meta name=\"apple-mobile-web-app-capable\" content=\"yes\"><meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black\"><meta content=\"telephone=no\" name=\"format-detection\"></head><P><FONT size=5>【一汽-大众诸暨元通】 —— 全心,全服务</FONT><SPAN style=\"COLOR: #000000\"><!--StartFragment --></P><DIV><FONT size=5>    9月27-29日,诸暨元通一汽-大众全系现车秋季城市广场金秋温情大酬宾啦!对一汽-大众大众汽车感兴趣的朋友亦可带着家人,邀上朋友,结伴来城市广场一汽-大众展位,我们期待您的光临</FONT><FONT size=5>!</FONT></DIV><DIV><FONT size=5>展位位置:</FONT></DIV><DIV><IMG style=\"WIDTH: 653px; HEIGHT: 388px\" height=673 src=\"/pro/iXs_Editor/uploadfile/20130925102136428.jpg\" width=1117 border=0></DIV><DIV> </DIV><DIV><FONT size=5>梦想随行,国庆献礼,诸暨元通一汽大众金秋温情大酬宾</FONT></DIV><DIV><FONT size=5></FONT> </DIV><DIV><IMG src=\"/pro/iXs_Editor/uploadfile/20130925102251145.jpg\" border=0></DIV><DIV><FONT size=4></FONT> </DIV><DIV><FONT size=4>愿我们真心优质的服务,真挚诚恳的让利,让您尽享购车之旅的那份愉悦与享受!<BR>我们的使命是让更多的人拥有一汽-大众品牌轿车!<BR></FONT><FONT size=4><STRONG><FONT color=#ff0000>汽车之路,元通相伴,汽车生活,元通服务<BR></FONT></STRONG>享受更多优惠,尽在诸暨元通一汽-大众4S店(原海越汽车)!<BR>一汽-大众授权经销商:诸暨元通汽车有限公司<BR>4S店地址:诸暨市环城西路167号(老办证中心旁)<BR>销售热线:0575-87105555<BR>预约热线:0575-87105501<BR>24小时救援热线:13857521919</FONT></DIV><P align=left><IMG src=\"http://car.zhuji.net/pro/iXs_Editor/uploadfile/20130903090510258.jpg\" border=0></P><DIV> </DIV></SPAN>";  
  34.           
  35.           
  36.         if (html.contains("src=\"/p"))  
  37.         {  
  38.             html = html.replace("src=\"/p""src=\"http://car.zhuji.net/p");  
  39.         }  
  40.         Log.i("info""=html2="+html.contains("src=\"/p") + "");  
  41.         showWebView();  
  42.           
  43.     }  
  44.   
  45.     private void showWebView()  
  46.     {  
  47.         // 设置WevView要显示的网页  
  48.         luntanListview.loadDataWithBaseURL(null, html, "text/html""utf-8",  
  49.                 null);  
  50.         luntanListview.getSettings().setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN);  
  51.         luntanListview.getSettings().setJavaScriptEnabled(true); //设置支持Javascript   
  52.         luntanListview.requestFocus(); //触摸焦点起作用.如果不设置,则在点击网页文本输入框时,不能弹出软键盘及不响应其他的一些事件。  
  53.         //        luntanListview.getSettings().setBuiltInZoomControls(true); //页面添加缩放按钮   
  54.         //                luntanListview.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);   //取消滚动条  
  55.   
  56.         //                点击链接由自己处理,而不是新开Android的系统browser响应该链接。   
  57.         luntanListview.setWebViewClient(new WebViewClient()  
  58.         {  
  59.             @Override  
  60.             public boolean shouldOverrideUrlLoading(WebView view, String url)  
  61.             {  
  62.                 //设置点击网页里面的链接还是在当前的webview里跳转    
  63.                 view.loadUrl(url);  
  64.                 return true;  
  65.             }  
  66.         });  
  67.         //        luntanListview.setOnFocusChangeListener(new View.OnFocusChangeListener() {  
  68.         //            @Override  
  69.         //            public void onFocusChange(View v, boolean hasFocus) {  
  70.         //                if (hasFocus) {  
  71.         //                    try {  
  72.         //                        // 禁止网页上的缩放  
  73.         //                        Field defaultScale = WebView.class  
  74.         //                                .getDeclaredField("mDefaultScale");  
  75.         //                        defaultScale.setAccessible(true);  
  76.         //                        defaultScale.setFloat(luntanListview, 1.0f);  
  77.         //                    } catch (SecurityException e) {  
  78.         //                        e.printStackTrace();  
  79.         //                    } catch (IllegalArgumentException e) {  
  80.         //                        e.printStackTrace();  
  81.         //                    } catch (IllegalAccessException e) {  
  82.         //                        e.printStackTrace();  
  83.         //                    } catch (NoSuchFieldException e) {  
  84.         //                        e.printStackTrace();  
  85.         //                    }  
  86.         //                }  
  87.         //            }  
  88.         //        });  
  89.     }  
  90.   
  91.     @Override  
  92.     public boolean onKeyDown(int keyCode, KeyEvent event)  
  93.     {  
  94.         if ((keyCode == KeyEvent.KEYCODE_BACK) && luntanListview.canGoBack())  
  95.         {  
  96.             luntanListview.goBack();//返回webView的上一页面      
  97.             return true;  
  98.         }  
  99.         return super.onKeyDown(keyCode, event);  
  100.     }  
  101.   
  102. }  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值