2018年5月23日 星期三
[Android Studio] WebView元件 - setWebViewClient與setWebChromeClient使用方法
一、WebViewClient 主要幫助WebView處理各種通知、請求事件的
●可用方法如下:
doUpdateVisitedHistory (更新歷史記錄)
onFormResubmission(應用程式重新請求網頁數據)
onLoadResource(載入指定位址提供的資源)
onPageFinished(網頁載入結束)
onPageStarted(網頁開始載入)
onReceivedError(報告錯誤資訊)
onScaleChanged(WebView發生改變)
shouldOverrideUrlLoading(新的連接在當前WebView中打開)
●範例:
// 在點擊請求的是連接時才會調用,重寫此方法返回true表明點擊網頁連接還是在當前的 WebView 裡跳轉,不跳到瀏覽器.
1、public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
// 此方法可以讓 WebView 處理https請求。
2、public void onReceivedSslError(WebView view, SslErrorHandler handler, android.net.http.SslError error) {
handler.proceed();
}
// 此方法才能夠處理在瀏覽器中的按鍵事件。
3、public boolean shouldOverrideKeyEvent(WebView view, KeyEvent event) {
return super.shouldOverrideKeyEvent(view, event);
}
}
// 在加載頁面時會調用,每一個URL加載都會調用一次。
4、 public void onLoadResource(WebView view, String url) {
super.onLoadResource(view, url);
}
// 在頁面加載開始時調用。
5、 public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
}
// 在頁面加載結束時調用。
6、public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
}
二、setWebChromeClient 主要輔助WebView處理Javascript的對話方塊、網站圖示、網站title、載入進度
●可用方法如下:
onCloseWindow(關閉WebView)
onCreateWindow(創建WebView)
onJsAlert(處理Js中的Alert對話方塊)、onJsConfirm(處理Js中的Confirm對話方塊)、onJsPrompt(處理JS中的Prompt對話方塊)
onProgressChanged(載入進度條改變)
onReceivedIcon(網頁圖示更改)
onReceivedTitle(網頁標題更改)
onRequestFocus(WebView顯示焦距)
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言
影片的問題請留在影片的留言區裡。
部落格不會另外通知給我,所以很難發現你有留言。