2012-06-13 100 views
3

我有福爾摩斯操作欄顯示在操作欄的幾個圖標,如共享,信息等安卓:去除福爾摩斯操作欄項目對於某些類

的事情是,我想刪除,爲某些活動/片段之一(共享),但我不能這樣做。

我的活動(StartActivity)從InfoActivity擴展而來,它是實施onCreateOptionsMenu的活動。

我試圖重寫onCreateOptionsMenu方法,做一個clear(),但它不工作:

@Override 
    public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { 
     super.onCreateOptionsMenu(menu, inflater); 
    } 

如何做到這一點任何想法?

非常感謝。

回答

0

我到底做了什麼,是創造不同的類別:一個用菜單中的按鈕共享按鈕,一個沒有,並且只是從適當的班級開始適當的活動。

例如,StartActivity,我不希望它具有共享功能,所以我將它從活動擴展而沒有共享按鈕。

感謝@NikolayElenkov的幫助!

4

找到相關菜單項並將其禁用或隱藏。像這樣的事情在onCreateOptionsMenu()onPrepareOptionsMenu()如果你想讓它動態:

menu.findItem(R.id.menu_share).setVisible(false); 
+0

當做一個'menu.findItem'時,我得到一個'NullPointerException'因爲沒有項目。 – noloman

+0

那麼,你需要首先膨脹菜單來獲取物品。 –

+0

是否可以這樣做,因爲我不是從XML填充操作欄中的MenuItems,但我是動態添加它們的? – noloman