Существует ли удобный способ показывать одни и те же пункты меню «Параметры» в нескольких действиях?
Пример. В моем приложении я отображаю руководство по телевизору одним из трех способов.
- Семидневный гид (TabActivity с 7 вкладками)
- Все каналы «Показываются сейчас» (ListActivity)
- Все показы за сегодня по времени начала (Activity - можно легко изменить на ListActivity)
Для меню параметров в TabActivity
код довольно прост ...
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
menu.clear();
inflater.inflate(R.menu.gv_options_menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.view:
...
...
}
}
... но в данный момент мне кажется, что мне нужно скопировать / вставить его вдва других занятия, которые я не люблю делать.Если я изменю код меню «Параметры» на один, мне нужно будет сделать это и для двух других.
Единственная альтернатива, о которой я могу подумать, это то, что у меня есть «вспомогательный» класс (POJO), к которому я мог быдобавьте метод и передайте context
в, чтобы разрешить использование метода getMenuInflator()
и другого метода, в который я мог бы передать результат item.getItemId()
для обработки с помощью switch-case.
Что является нормальнымспособ иметь несколько действий с тем же меню параметров?