Kis*_*han 3 android popup webview
我目前正在使用webview,其中在webview中单击某个按钮时会创建Javascript弹出窗口.但它并没有在我的Webview中打开.
我的代码在这里:
wvPayements = (WebView) view.findViewById(R.id.wvPaymentsPage);
wvPayements.getSettings().setLoadWithOverviewMode(true);
wvPayements.getSettings().setUseWideViewPort(true);
wvPayements.getSettings().setSupportZoom(true);
wvPayements.getSettings().setAllowFileAccess(true);
wvPayements.getSettings().setJavaScriptEnabled(true);
wvPayements.getSettings()
.setJavaScriptCanOpenWindowsAutomatically(true);
wvPayements.getSettings().setBuiltInZoomControls(true);
wvPayements.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
@Override
public void onPageFinished(WebView view, final String url) {
dialog.cancel();
}
});
wvPayements
.loadUrl("http://192.168.0.114/Parch_ws/testalert.html");
Run Code Online (Sandbox Code Playgroud)
这是你的解决方案
您必须提供可以处理警报的chrome客户端:
应该使用WebChromeClient来获取这些警报,并且可以使用该onJsAlert()方法覆盖功能.希望这可以帮助!
WebView wv=new WebView(this);
wv.setWebChromeClient(new WebChromeClient() {
@Override
public boolean onJsAlert(WebView view, String url, String message, JsResult result) {
//Required functionality here
return super.onJsAlert(view, url, message, result);
}
});
Run Code Online (Sandbox Code Playgroud)
检查此链接和最后一条评论,您必须使用WebChromeClient.
http://code.google.com/p/android/issues/detail?id=752
| 归档时间: |
|
| 查看次数: |
7565 次 |
| 最近记录: |