如何在 Webview 中使用 JavaScript 代码显示活动? [英] How to show an activity with JavaScript code in Webview?
本文介绍了如何在 Webview 中使用 JavaScript 代码显示活动?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的应用程序有一个包含 Webview 的第一个活动,并在应用程序开始时从服务器加载一个简单的页面.
My application has a first activity that contains Webview and loads a simple page from the server in the beginning of the application.
页面代码为:
<html>
<head>
<title></title>
<meta charset="utf-8" />
</head>
<body>
<button id="btn_foo"></button>
</body>
</html>
我有一个带有视频播放器的第二个活动.
I have a second activity that has a video player.
如何通过 JavaScript 在我的网页中显示/隐藏第二个活动?例如,当我点击 btn_foo
时(就像 Firefox 中的 VLC 插件,可以通过 JavaScript 向它发送命令).
How can I show/hide the second activity via JavaScript in my webpage? For example, when I click on btn_foo
(like VLC plugin in Firefox that can send commands to it via JavaScript).
推荐答案
以下是您在 onCreate
中执行的操作:
Here's what you do in your onCreate
:
class MyJavaScriptInterface {
@JavascriptInterface
public void doStuff(String param) {
runOnUiThread(new Runnable() {
@Override
public void run() {
// start Video Activity here
}
});
}
}
final WebView webView = (WebView) findViewById(R.id.browser);
webView.setWebChromeClient(new WebChromeClient());
/* enable JavaScript */
webView.getSettings().setJavaScriptEnabled(true);
/* Register a new JavaScript interface called Android */
webView.addJavascriptInterface(new MyJavaScriptInterface(), "Android");
/* load a web page */
webView.loadUrl(url);
在您加载的网站中,点击按钮后,运行
In your loaded website, when the button is clicked, run
Android.doStuff("video1"); // calling the @JavascriptInterface method
这篇关于如何在 Webview 中使用 JavaScript 代码显示活动?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文