我的程序中有一个webview。 我在这个包含javascript函数的webview中加载了一个字符串。当我在模拟器中加载它时,它无法正常工作 即如果我写一个简单的警报,webView将不会显示警报。 我启用了javascript。但那时它也不起作用。 可能是什么原因? 请帮忙 三江源
答案 0 :(得分:2)
警报通常不适用于WebView。您需要编写代码来自己完成。您可以通过实现自己的WebChromeClient版本轻松实现。换句话说:
class ChromeClient extends WebChromeClient {
public boolean onJsAlert(WebView view, String url, String message, JsResult result) {
Toast.makeText(view.getContext(), message, Toast.LENGTH_SHORT).show();
}
}
...
mWebView.setWebChromeClient(new ChromeClient());
我建议的另一件事是实现onConsoleMessage。这样您就可以在JavaScript中使用“console.log”并将其定向到Toast或Android Log。