2013-02-14 23 views
9

Witaj Android Developers,Android - Odśwież Opcje Menu bez wywoływania invalidateOptionsMenu()

Widziałem wiele pytań dotyczących aktualizacji Menu Opcji. Jednak każda odpowiedź mówi, że muszę zadzwonić pod numer invalidateOptionsMenu().
Moje pytanie brzmi, czy istnieje inny sposób aktualizowania menu opcji bez wywoływania metody invalidateOptionsMenu()?

+2

Czy istnieje powód, aby nie używać 'invalidateOptionsMenu()'? Właśnie to jest dla ... – kcoppock

+0

Stworzyłem klasę A, która rozszerza działanie. Utworzono klasę B, która rozszerza klasę A. classC (Wywołuje moją aktywność XML) rozszerza classC. –

+0

Zobacz http://stackoverflow.com/a/11699930/597657 –

Odpowiedz

17
@Override 
    public boolean onPrepareOptionsMenu(Menu menu) { 

     menu.clear(); // Clear the menu first 

      /* Add the menu items */ 

     return super.onPrepareOptionsMenu(menu); 
    } 

To rozwiązało problem na aktualizację OptionsMenu bez wywoływania invalidateOptionsMenu()

+0

Wywołuje wywołania invalidateOptionsMenu onItemSelected of spinner w pasku akcji i muszę spróbować! –

+0

to działa! Nie mogę użyć invalidateOptionsMenu, ponieważ w jakiś sposób po wywołaniu tego, toast, który ma pojawić się po długim naciśnięciu ikony pozycji menu już nie działa – Bruce

Powiązane problemy