0

我有一个问题:当我使用带有 javascript 界面的 webview 在我的活动和 html 页面之间进行通信时,我的 actionbarsherlock 停止工作。问题出在这一行:

myWebView.addJavascriptInterface(new JsObject(), "injectedObject");

问题包括 List 导航和带有 ActionView 的菜单项。

基本上如果我评论上面的代码,一切正常。

一些图片来解释:

我的活动与 sherlockactionbar 和 webview 我的活动与 sherlockactionbar 和 webview

当我在 webview 中 调用方法addJavascriptInterface时,我的操作栏不起作用当我在 webview 中调用方法 **addJavascriptInterface** 时,我的操作栏不起作用

当我删除方法addJavascriptInterface时,我的操作栏工作 当我删除方法 **addJavascriptInterface** 时,我的操作栏工作

我怎么解决这个问题????谢谢。

4

1 回答 1

0

哦,我在看这个问题时发现了我的问题

基本上我有一个伪装视图的javascript访问的方法。所以这引发了 UI 错误。

前:

class JsObject {
   @JavascriptInterface
   public void cancelProgress() {
     progressbar.setVisibility(View.GONE);
  }
}

后:

class JsObject {
   @JavascriptInterface
   public void cancelProgress() {
     runOnUiThread(new Runnable(){
     @Override
       public void run(){
        progressbar.setVisibility(View.GONE);
      }
   });
  }
}
于 2013-07-03T12:59:58.727 回答