2013-06-21 50 views
3

我製作了動作欄sherlock appliction並打開頂部欄上的子菜單操作欄shelock點擊並顯示,但在設備菜單上點擊不打開子菜單裏面的操作欄shelock請幫助我。ActionbarSherlock在keydown上的設備菜單上打開子菜單點擊android

@Override 
public boolean onCreateOptionsMenu(com.actionbarsherlock.view.Menu menu) { 
    com.actionbarsherlock.view.SubMenu subMenu = menu.addSubMenu("Menu"); 
    subMenu.add(0, SUB_MENU_1, 0,"Settings"); 
    com.actionbarsherlock.view.MenuItem menuItem = subMenu.getItem(); 
    menuItem.setIcon(R.drawable.menu_selector); 
    menuItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_WITH_TEXT); 
    return true; 
} 

這裏IM cofuse開放子菜單上按下按鍵操作欄福爾摩斯,

@Override 
    public boolean onKeyDown(int keyCode, KeyEvent event) { 
    if (event.getAction() == KeyEvent.ACTION_DOWN) { 
     switch (keyCode) { 
     case KeyEvent.KEYCODE_MENU: 
         // here some write code 
      return true; 
     } 
    } 
    return super.onKeyDown(keyCode, event); 
} 

由於提前,

+0

我也面臨同樣的問題。請讓我知道它是否已解決。謝謝。 – Kameswari

回答

6

我發現我對這個問題的自我解決方案,

public Menu menuMain; 
@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    menuMain = menu; 
    subMenu = menu.addSubMenu(0, MENU_ID_1, 0, "Menu"); 
    subMenu.add(0, SUB_MENU_1, 0, getString(R.string.menu_settings)); 
    subMenu.add(0, SUB_MENU_2, 0, getString(R.string._new)); 
    menuItem = subMenu.getItem(); 
    menuItem.setIcon(R.drawable.menu_selector); 
    menuItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_WITH_TEXT); 
    return true; 
} 

First We Global變量顯示在操作欄sherlock菜單上並初始化爲onCreateOptionMenu,

而且爲的onkeyup活動覆蓋方法定義,

@Override 
public boolean onKeyUp(int keyCode, KeyEvent event) { 
    if (event.getAction() == KeyEvent.ACTION_UP || event.getAction() == KeyEvent.ACTION_DOWN) { 

     switch (keyCode) { 
     case KeyEvent.KEYCODE_MENU: 
      if (menuMain != null && menuMain.findItem(MENU_ID_1) != null) 
       menuMain.performIdentifierAction(MENU_ID_1, 0); 
      return true; 
     } 
    } 
    return false; 
} 

所以,很高興它的工作很細,沒有這樣的任何異常拋出.... !!!!!!

+0

謝謝,我幫助這個代碼 –

相關問題