WebView详解

 在Android手机中内置了一款高性能webkit内核浏览器,在SDK中封装为一个叫做WebView组件
 Webkit:Mac OS X v10.3及以上版本所包含的软件框架(对v10.2.7及以上版本也可通过软件更新获取)。
 同时,WebKit也是Mac OS X的Safari网页浏览器的基础。
 WebKit是一个开源项目,主要由KDE的KHTML修改而来并且包含了一些来自苹果公司的一些组件。
 
 
 在开发过程中应该注意几点:
    1.AndroidManifest.xml中必须使用许可"android.permission.INTERNET",否则会出Web page not available错误。
    2.如果访问的页面中有Javascript,则webview必须设置支持Javascript。
        webview.getSettings().setJavaScriptEnabled(true); 
    3.如果页面中链接,如果希望点击链接继续在当前browser中响应,而不是新开Android的系统browser中响应该链接,必须覆盖 webview的WebViewClient对象。

 mWebView.setWebViewClient(new WebViewClient(){      
    public boolean shouldOverrideUrlLoading(WebView view, String url) {      
     view.loadUrl(url);      
     return true;      
    }      
 });  
 4.如果不做任何处理,浏览网页,点击系统“Back”键,整个Browser会调用finish()而结束自身,如果希望浏览的网 页回退而不是推出浏览器,需要在当前Activity中处理并消费掉该Back事件。
 public boolean onKeyDown(int keyCode, KeyEvent event) {      
        if ((keyCode == KeyEvent.KEYCODE_BACK) && mWebView.canGoBack()) {      
            mWebView.goBack();      
                   return true;      
        }      
        return super.onKeyDown(keyCode, event);      
    }    

posted on 2014-02-27 14:10  清凉一夏之博客  阅读(402)  评论(0编辑  收藏  举报