2010-05-24 113 views
0

我有一個TabLayout包含選項卡作爲活動的意圖。 我想爲每個選項卡設置自定義菜單項,但所調用的onCreateOptionsMenu版本是主機的版本。 如何使自己創建的菜單項由每個活動創建。TabLayout自定義菜單

回答

0

boolean result = super.onCreateOptionsMenu(); 
// do anything but don't change anything in the menu in case of the specific menu u want 
return result; 

的呼叫時,與onPrepareOptionsMeny()一樣

4

如果你想要的只是子Activity的菜單而不是TabActivity的菜單,那麼你只需要它來停止onCreateOptionsMenu()的傳播。也就是說,通常在最後調用「return super.onCreateOptionsMenu(menu);」,但如果您只是return true而不是隻顯示任何特定選項卡的子活動菜單。

0
int cur = tabHost.getCurrentTab();  
       Log.i("current tab for asdasff", ""+cur); 
       tabHost.getTabWidget().getChildAt(cur).setOnCreateContextMenuListener(new OnCreateContextMenuListener() { 

        @Override 
        public void onCreateContextMenu(ContextMenu menu, View v, 
          ContextMenuInfo menuInfo) { 
         // TODO Auto-generated method stub 
         MenuInflater menuInflater = getMenuInflater(); 
         menuInflater.inflate(R.menu.context_menu, menu); 
         //createMenu(menu); 
        } 
       }