android setWebChromeClient和setWebViewClient的使用區別

開發中我發現兩個控件的使用,由於我做的開發依舊是前期開發,所以功能比較簡單,在這裏我使用的webView空間一般是使用的如下這個方法
webView.setWebViewClient(new webViewClient());
然後新建一個內部類實現webViewClient繼承WebViewClient類,方法如下:
private class HelloWebViewClient extends WebViewClient { 
                @Override
                public boolean shouldOverrideUrlLoading(WebView view, String url) { 
                    view.loadUrl(url); 
                    return true; 
                } 
            } 

但是在我參考了一個比較完善的webView控件使用後發現,實現方法是
setWebChromeClient(new WebChromeClient());
        public class WebChromeClient extends android.webkit.WebChromeClient{
   //方法體略去,要繼承實現必須實現的方法。
}

通過對比和翻譯外文檢索結果:
使用WebChromeClient 可以操作Javascript dialogs(js腳本對話框), favicons(添加收藏的標誌), titles(標題), 和 progress(進度條).

簡單的說,如果除了加載HTML的話,只需要用WebViewClient即可,但是在進行兼容互聯網上附加javascript的頁面的時候和調用javascript對話框的時候,或者功能較爲複雜的內嵌操作的時候,建議使用WebChromeClient 。


二。可使滾動條不佔位

setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY)可使滾動條不佔位


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章