我正在開發一個Android應用程序,並且我有麻煩的使javascript工作。 這裏是我的主要活動代碼:Javascript不能在webview上工作
protected void onCreate(Bundle savedInstanceState) {
Log.i(TAG, "create LocalDialogActivity");
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_local_dialog);
webView = (WebView)findViewById(R.id.local_dialog_webview);
webView.setWebChromeClient(new WebChromeClient());
webView.getSettings().setUseWideViewPort(true);
webView.getSettings().setLoadWithOverviewMode(true);
webView.getSettings().setSupportZoom(true);
webView.getSettings().setBuiltInZoomControls(true);
webView.getSettings().setDisplayZoomControls(false);
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
}
}
private class WebAppInterface {
@JavascriptInterface
public void validate() {
//do some action...
}
@JavascriptInterface
public void cancel() {
//do some actions...
}
}
這裏是我的html代碼:
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="../css/style.css">
<script src="../js/myjavascript.js"></script>
</head>
<body>
<section id="header">
</section>
<section id="buttons">
<button class="button" id="no" onclick="cancel()">cancel</button>
<button class="button" id="yes" onclick="validate()">validate</button>
</section>
<footer id="footer">
</footer>
</body>
</html>
當我點擊我的按鈕,功能驗證()和取消()不工作。
這裏是我的javascript代碼:
function validate() {
Interface.validate();
}
function cancel() {
Interface.cancel();
}
界面是我在我的Android代碼javascriptInterface。
任何想法都會受到歡迎。