Autore Topic: Classe per unico menu  (Letto 618 volte)

Offline fermat

  • Utente junior
  • **
  • Post: 93
  • Respect: +1
    • Mostra profilo
    • Mattepuffo.com
Classe per unico menu
« il: 22 Gennaio 2012, 14:45:04 CET »
0
salve!
sto aggiungendo un menu alla mia app che tre Activity.
visto che il menu è lo stesso pensavo di creare una classe unica da implementare in ogni activity invece di ripetere lo stesso codice.
per ora in una activity ho messo questo:
Codice: [Seleziona]
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
            super.onCreateOptionsMenu(menu);
            int order = Menu.FIRST;
            menu.add(0, 0, order++, "Photogallery").setIntent(new Intent(this, CollectionActivity.class));
            menu.add(0, 1, order++, "News").setIntent(new Intent(this, NewsActivity.class));
            menu.add(0, 2, order++, "Newsletter").setIntent(new Intent(this, Activity.class));
            return true;
    }
è possibile creare un'unica classe da implementare poi nelle varie activity?

Offline blackgin

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1387
  • Respect: +164
    • Google+
    • blackgins
    • blackginsoft
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Nexus
  • Sistema operativo:
    Mac OSX 10.8
Re:Classe per unico menu
« Risposta #1 il: 22 Gennaio 2012, 15:27:18 CET »
0
Crea un'activity generica che ha quel menu e poi eredita ogni activity da quella.
Postate il LogCat LogCat LogCat LogCat LogCat

Offline fermat

  • Utente junior
  • **
  • Post: 93
  • Respect: +1
    • Mostra profilo
    • Mattepuffo.com
Re:Classe per unico menu
« Risposta #2 il: 22 Gennaio 2012, 16:03:52 CET »
0
ok:
Codice: [Seleziona]
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;

public class GeneralMenu extends Activity {
        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
                super.onCreateOptionsMenu(menu);
                int order = Menu.FIRST;
                menu.add(0, 0, order++, "Photogallery").setIntent(
                                new Intent(this, CollectionActivity.class));
                menu.add(0, 1, order++, "News").setIntent(
                                new Intent(this, NewsActivity.class));
                menu.add(0, 2, order++, "Newsletter").setIntent(
                                new Intent(this, NewsletterActivity.class));
                return true;
        }
}
e poi ogni Actitivty estende questa classe.
però vorrei fare un'altra domanda.
se una activity ha ad esempio una voce in più o diversa, è possibile modificare reimplementare il menu aggiunendo o modificando quella singola voce??