Autore Topic: Lanciare una activity da Menu  (Letto 1385 volte)

Offline jigen

  • Nuovo arrivato
  • *
  • Post: 6
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    Htc Desire
  • Sistema operativo:
    Mac OS X Snow Leopard
Lanciare una activity da Menu
« il: 30 Luglio 2010, 21:42:40 CEST »
0
Come da titolo, qualcuno sa come fare per lanciare una nuova activity da un Menu? Cioè alla pressione del tasto menu, deve uscire un'icona e una volta cliccata tale icona, dovrei lanciare una nuova activity.

Offline noodles

  • Utente junior
  • **
  • Post: 130
  • Respect: +8
    • Mostra profilo
  • Dispositivo Android:
    Google Nexus One
  • Sistema operativo:
    Mac OS X Snow Leopard
Re:Lanciare una activity da Menu
« Risposta #1 il: 31 Luglio 2010, 02:46:01 CEST »
0
Da menu intendi un option menu? In questo caso basta gestire l'option menu e una volta catturato l'evento di click su un determinato Item, creare un intent e lanciare l'activity desiderata.

Offline jigen

  • Nuovo arrivato
  • *
  • Post: 6
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    Htc Desire
  • Sistema operativo:
    Mac OS X Snow Leopard
Re:Lanciare una activity da Menu
« Risposta #2 il: 31 Luglio 2010, 11:52:41 CEST »
0
Non so se si chiama option menu, basta che alla pressione dell'icona parta l'activity. Nel senso non ci devono essere subMenu. In termini di codice cosa dovrei fare???

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:Lanciare una activity da Menu
« Risposta #3 il: 31 Luglio 2010, 13:06:24 CEST »
0
Semplicemente creare il menu con l'apposito metodo di override, dove andrai ad aggiungere l'item che lancia l'activity.
Dopo di che usi il metodo per intercettare la pressione dell'item e da lí lanci l'activity tramite intent.
Postate il LogCat LogCat LogCat LogCat LogCat

Offline noodles

  • Utente junior
  • **
  • Post: 130
  • Respect: +8
    • Mostra profilo
  • Dispositivo Android:
    Google Nexus One
  • Sistema operativo:
    Mac OS X Snow Leopard
Re:Lanciare una activity da Menu
« Risposta #4 il: 31 Luglio 2010, 13:10:31 CEST »
0
Con l'option menu ti si apre un menu in basso, cliccando sul pulsante menu disponibile su ogni dispositivo android. Da qui puoi fare quello che vuoi cliccando ogni tasto del menu, anche far partire una nuova activity.

Per fare ciò devi fare l'override dei metodi:

- onCreateOptionsMenu() -> crea il menu
- onOptionsItemSelected() -> gestisci l'evento selezione di un item del menu
- onPrepareOptionsMenu() questo è opzionale, ti serve solo nel caso in cui devi modificare il menu dinamicamente

Per creare un menu, fatti un file xml e poi fai un inflate nel metodo onCreateOptionsMenu() oppure lo crei per via programmatica direttamente da codice (sconsigliato).

Se cerchi su google è pieno di tutorial su come creare un option menu ;)

Offline jigen

  • Nuovo arrivato
  • *
  • Post: 6
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    Htc Desire
  • Sistema operativo:
    Mac OS X Snow Leopard
Re:Lanciare una activity da Menu
« Risposta #5 il: 31 Luglio 2010, 14:37:11 CEST »
0
Io ho scritto il seguente pezzo di codice, solo che quando premo il tasto menu non esce nulla!!! Controllate per favore se ci sono errori!

Codice (Java): [Seleziona]
public boolean onCreateOptionMenu(Menu menu){
                MenuItem mi = menu.add(0, 1, 0, "Nuova Activity");
                mi.setIcon(R.drawable.icon);
                return true;
        }
       
        public boolean onOptionItemSelected(MenuItem item) {
                Log.i(LOG_TAG, "onOptionsItemSelected Called!");
                if (item.getItemId()==1) {
                        Log.i(LOG_TAG, "Nuova Activity");
                        Intent intent = new Intent(this , MyActivity.class);
                        startActivity(intent);
                        return true;
                }
                return super.onOptionsItemSelected(item);
        }
« Ultima modifica: 01 Agosto 2010, 14:46:16 CEST da JD »

Offline jigen

  • Nuovo arrivato
  • *
  • Post: 6
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    Htc Desire
  • Sistema operativo:
    Mac OS X Snow Leopard
Re:Lanciare una activity da Menu
« Risposta #6 il: 31 Luglio 2010, 21:13:42 CEST »
0
Penso di aver risolto!....avevo sbagliato a scrivere invece di onCreateOptionsMenu ho scritto onCreateOptionMenu!!!!   o_O