我想在操作欄中顯示不同的菜單(我使用sherlock操作欄),具體取決於在webview中執行打開頁面的javascript功能。切換操作欄菜單
例如,在page1.html中,調用Android.showMenu(1)
。 在page2.html中,調用Android.ShowMenuB(2)
。
目前的菜單全部由java代碼定義的,就像這樣:
public boolean onCreateOptionsMenu (Menu menu) {
super.onCreateOptionsMenu (menu);
MenuItem menu0 menu.add = (0, 0, 0, "ButtonA");
{
menu0.setIcon (R.drawable.buttona);
menu0.setShowAsAction (MenuItem.SHOW_AS_ACTION_IF_ROOM);
}
MenuItem menu1 menu.add = (0, 1, 1, "ButtonB");
{
menu1.setIcon (R.drawable.buttonb);
menu1.setShowAsAction (MenuItem.SHOW_AS_ACTION_IF_ROOM);
}
return true;
}
我檢測使用JavascriptInterface這樣的功能的存在:
myWebView.addJavascriptInterface (new WebAppInterface (this), "Android");
...
{public class WebAppInterface
Context mContext;
WebAppInterface (Context c) {
mContext = c;
}
@ JavascriptInterface
public void showMenuA (int menu) {
??
}
}
是否有可能?或者我將不得不使用其他方法?
我也掙扎在同一screnario無效操作欄。你可以幫我嗎? – Karthick