Android: Como ter um menu compartilhado em cada atividade (Lista) sem reescrever os métodos substituídos?

Eu sei que o Android fornece alguns métodos úteis para serem substituídos, a fim de definir um menu:

    @Override
 public boolean onCreateOptionsMenu(Menu menu) {
  menu.add(0, AIS, 0, "Activity Inventory Sheet").setIcon(android.R.drawable.ic_menu_upload);
                // ...
  return true;
 }

 public boolean onOptionsItemSelected(MenuItem item) {
  Intent i;
     switch (item.getItemId()) {
     case AIS: i = new Intent(this, ActivityInventorySheet.class);
      startActivity(i);
               return true;
     // ...
     }
     return false;
 }

Eu gostaria de ter este menu compartilhado por cada atividade e ListActivity do meu aplicativo Android. Isso é para ter um menu padrão em cada atividade (Lista) que permite ao usuário pular para todas as partes do aplicativo em um clique.

Agora, a maneira mais fácil de conseguir isso é copiar e colar os dois métodos em cada atividade (List) do aplicativo. Eu não gosto dessa redundância de código escrito :)

A subclasse é uma escolha razoável? Eu já vi essa subclassificação de um dos meus ListActivity não funciona muito bem (threads que recuperam objetos de um banco de dados estão dando problemas). Existem outras maneiras de compartilhar um menu através do Activities?

obrigado

questionAnswers(3)

yourAnswerToTheQuestion