0

我有一个 webview,它有一个 HTML 和一个在 WebAppInterface 中调用 Android.closeRegForm() 的链接我有一个方法

@JavascriptInterface
    public void closeRegForm() {
        ((MainActivity)mContext).closeRegForm();
    }

必须在 MainActivity 上调用 closeRegForm 方法,但我收到此错误。

09-10 12:54:50.134: E/Web Console(1171): Uncaught Error: Error calling method on NPObject. at http://example.com/aaa.php:1

当我将此方法更改为

@JavascriptInterface
    public void closeRegForm() {
        Toast.makeText(mContext, "blabla", Toast.LENGTH_SHORT).show();
    }

它显示“blabla”吐司。为什么我不能在 mainactivity 上调用方法?

4

1 回答 1

3

您必须在 MainActivity 中添加不同名称的功能

public void closeRegForm1() {
    //Anything
}

注意:这应该是公开的

然后调用为

@JavascriptInterface
public void closeRegForm() {
    ((MainActivity)mContext).closeRegForm1();
}
于 2016-04-28T12:44:41.673 回答