1

我是 android 的新手(也是我在 StackOverflow 上的第一篇文章),我想知道是否有一种方法可以将控制从显示 HTML 的 web 视图传递到实际的 android 代码。为了更清楚一点:

假设我有一个 HTML 代码,我在 android 的 web 视图中显示,现在我单击提交按钮(在 HTML 页面中),有没有办法使用该单击来调用 android 代码中的方法?

一个非常高级的视图可以是

if(Submit is clicked){ //提交将是html页面中的提交按钮

调用 xyz(); //xyz 将是 android 方法

}

如果你们能提供帮助,我将不胜感激。

4

3 回答 3

1

可以的,参考这个。那里有一个简单的例子应该让你开始。

Javascript 是当今的热门词汇。

于 2012-06-01T20:37:32.863 回答
1

用于addJavaScriptInterface()在 Javascript 环境中对某个 Java 对象进行引用。

这是一个示例应用程序来演示这一点,以允许 a 中的页面WebView从托管WebView.

于 2012-06-01T20:38:50.010 回答
0

您可以使用 WebViewaddJavascriptInterface将您的方法导出到 HTML 页面,这是一个相关的片段:

WebViewVariable.addJavascriptInterface(new MyJavaScriptInterface(context), "Android");

这是代码MyJavaScriptInterface

class MyJavaScriptInterface {
    Context localContext;

    public MyJavaScriptInterface(Context ctx) {
        localContext = ctx;
    }


    public void pageReady() {
        // do your work here
    }
}

您现在可以pageReady()像这样从您的 HTML 页面调用上述类的方法Android.pageReady()。请记住,您只能传递原始数据类型(如果我没记错的话)。

希望能帮助到你

于 2012-06-01T20:43:31.337 回答