安卓webview系列(基礎)——如何用webview支持JS彈窗

class MywebChromeClient extends WebChromeClient {
@Override
public boolean onJsAlert(WebView view, String url, String message,
final JsResult result) {
// 彈窗處理
AlertDialog.Builder b2 = new AlertDialog.Builder(WebView_login.this)
.setTitle(R.string.app_name).setMessage(message)
.setPositiveButton("ok", new AlertDialog.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
result.confirm();
}
});


b2.setCancelable(false);
b2.create();
b2.show();


return true;
}
}

完成之前一系列的的功能基本上能滿足大部分應用的需求,但是還是有一些應用需要特殊一點的功能如:JS彈窗就是其中之一。有人說,誒,我們之前不就是讓webview可以支持JS麼?額,很遺憾的告訴您,那個JS只是讓樣式不會失效罷了,JS彈窗在webview中默認是不允許的,所以還是得靠自己解決。

要解決JS彈窗的話,就需要WebChromeClient裏面的方法,還是老規矩,看代碼吧!

webview.setWebChromeClient(new MywebChromeClient()); //在加載網頁前加上這句就可以了
</pre><pre name="code" class="java">



是不是很簡單啊?有任何問題都可以一起討論哦!再見

本人才疏學淺,還望多多指教!




發佈了30 篇原創文章 · 獲贊 4 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章