Android: несколько вариантов меню в одном действии

У меня есть Activity содержащий ViewFlipper и хотел бы показать другое меню опций для каждого представления в этом ViewFlipper . То есть тип меню, отображаемого при нажатии кнопки меню, будет зависеть от типа текущего вида. Однако onCreateOptionsMenu() вызывается только один раз (при первом показе меню опций), поэтому создание различных меню там невозможно. Как я могу это решить?

Любые предложения оценены.

Solutions Collecting From Web of "Android: несколько вариантов меню в одном действии"

Сначала прочитайте о onPrepareOptionsMenu (меню меню)

Каждый раз, когда пользователь нажимает Меню на своем устройстве Android, находясь внутри одного из ваших действий, onPrepareOptionsMenu метод onPrepareOptionsMenu . При первом отображении меню (т. onCreateOptionsMenu Только один раз ) onCreateOptionsMenu метод onCreateOptionsMenu .

В принципе, метод onPrepareOptionsMenu – это то, где вы должны вносить какие-либо изменения, такие как включение / отключение определенных пунктов меню или изменение текста пункта меню в зависимости от обстоятельств.

Так что сделайте это (не используйте onCreateOptionsMenu(Menu menu) )

 //Dynamically create context Menu @Override public boolean onPrepareOptionsMenu(Menu menu) { menu.clear(); //Clear view of previous menu MenuInflater inflater = getMenuInflater(); if(condition_true) inflater.inflate(R.menu.menu_one, menu); else inflater.inflate(R.menu.menu_two, menu); return super.onPrepareOptionsMenu(menu); }