2012-06-12 149 views
3

我使用加载了JavaScript的WebView在Android中工作。我成功地加载了页面,js等。而且我已经成功使用如何通过发出window.close关闭从(javascript)打开的窗口

上加载的index.html打开一个新的窗口,我可以在活动

mWebView.getSettings().setJavaScriptEnabled(true); 
mWebView.getSettings().setAllowFileAccess(true); 
mWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true); 
mWebView.loadUrl("file:///android_asset/index.html"); 

与JS中的index.html被加载后使用JS的,我成功打开了一个窗口。

myWin=window.open("http://www.google.com") at js 

但是,当我发出关闭信号时,页面仍然打开。

myWin.close(); 

你有什么想法吗?

回答

2

您必须在您的WebChromeClient中实施onCloseWindow。否则,您的应用无法知道关闭视窗意味着什么。

+0

是的,我收到了消息onCloseWindow,但页面仍然打开。我错过了... – Agus

+0

正确的,*你*必须关闭窗口(Java),因为你正在实现窗口。想想你的应用中的网页“窗口”是什么。它可能是一个'WebView',但它也可以是一些其他的布局,带有一些按钮以及一个“WebView”。 – kabuko

1

尝试安排您的代码的顺序它很重要。可能是您在启用JavaScript之前使用JavaScript。

相关问题