我有一个问题:当我使用带有javascript界面的webview来实现我的活动和html页面之间的通信时,我的actionbarsherlock停止工作。问题出在这一行:
myWebView.addJavascriptInterface(new JsObject(), "injectedObject");
问题包括列表导航和带有ActionView的菜单项。
基本上,如果我评论上面的代码,一切正常。
一些图片要解释:
我的活动与sherlockactionbar和webview
当我在我的网页视图中调用方法 addJavascriptInterface 时,我的操作栏无效
删除方法 addJavascriptInterface 后,我的操作栏正常工作
我该如何解决这个问题????感谢。
答案 0 :(得分:0)
哦,我在查看this question
时发现了问题基本上我有一个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);
}
});
}
}