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">
是不是很简单啊?有任何问题都可以一起讨论哦!
本人才疏学浅,还望多多指教!