2015-05-31 26 views
1

退出菜單後,需要隱藏該ActionBar。在活動中捕獲關閉覆蓋onOptionsMenuClosed(菜單菜單)。但菜單已關閉,此方法未被調用。而不是當我點擊「後退」或按菜單觸摸時。如何解決它?爲什麼OnOptionsMenuClosed未在Android上調用

這是我在Main.java代碼:

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    super.onCreateOptionsMenu(menu); 
    getMenuInflater().inflate(R.menu.menu_fomenu, menu); 
    return true; 
} 

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    int id = item.getItemId(); 

    if (id == R.id.default_lista_betoltese) { 
     Toast.makeText(getApplicationContext(), 
       "Alaplista betöltése kész", 
       Toast.LENGTH_SHORT) 
       .show(); 
     return true; 
    } 

    if (id == R.id.lista_betoltese) { 
     Toast.makeText(getApplicationContext(), 
       "Mentett lista betöltése kész", 
       Toast.LENGTH_SHORT) 
       .show(); 
     return true; 
    } 

    if (id == R.id.lista_mentese) { 
     Toast.makeText(getApplicationContext(), 
       "Mentés kész", 
       Toast.LENGTH_SHORT) 
       .show(); 
     return true; 
    } 

    if (id == R.id.szerkeszto_mod) { 
     szerkeszto_mod(!szerkesztomod); 
     return true; 
    } 

    if (id == R.id.betumeret_noveles) { 
     betumeret++; 
     Toast.makeText(getApplicationContext(), 
       "Betűméret: " + betumeret, 
       Toast.LENGTH_SHORT) 
       .show(); 
     return true; 
    } 

    return super.onOptionsItemSelected(item); 
} 

@Override 
public void onOptionsMenuClosed (Menu menu) { 
    super.onOptionsMenuClosed(menu); 
    getWindow().getDecorView().setSystemUiVisibility(
      View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | 
        View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | 
        View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); 
} 
+0

我什麼也看不到在Android源代碼表明'onOptionsMenuClosed()'所使用的動作條的實施。請記住,只有在嘗試定義菜單並且沒有操作欄時纔會使用真正的「選項菜單」,並且可以追溯到Android 1.x/2.x。 – CommonsWare

+0

@CommonsWare我明白了,謝謝!我試圖用它來處理操作欄的菜單。我怎樣才能抓住行動欄的菜單關閉? –

+0

如果通過「菜單」,你的意思是溢出,我不記得有一個事件,雖然我沒有找到一個,可能只是忘了它。 – CommonsWare

回答

相關問題