Autore Topic: Chiamare activity da una dialog  (Letto 724 volte)

Offline Luigi.Arena

  • Utente senior
  • ****
  • Post: 616
  • DACIA DUSTER 4X4 SUPER
  • Respect: +56
    • Mostra profilo
    • ArenaWebTest
  • Dispositivo Android:
    epad m009
  • Play Store ID:
    Luigi Arena
  • Sistema operativo:
    Windows 7
Chiamare activity da una dialog
« il: 07 Dicembre 2011, 18:28:39 CET »
0
Come faccio ad aprire una activity da una dialog.
Oppure come faccio a chiudere l'applicazione sempre da una dialog.
Questo è il listener all'interno della dialog:
Codice: [Seleziona]
public void onClick(View v)
                        {
                                // Listener click
                                if (v == btnOk)
                                        {
                                                //Qui vorrei aprire un activity oppre chiudere l'applicazione
                                        }
                                if (v == btnCancel)
                                        {
                                                dismiss();
                                        }

                        }
È stata trovata una soluzione al tuo problema?Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato .

Offline Verandi

  • Moderatore
  • Utente normale
  • *****
  • Post: 378
  • Respect: +75
    • Mostra profilo
  • Sistema operativo:
    Windows 7
Re:Chiamare activity da una dialog
« Risposta #1 il: 08 Dicembre 2011, 11:41:29 CET »
0
Per far partire l'activity usi v.getContext().startActivity(), per terminarla usi TuaActivity.this.finish().  ;-)

Offline Luigi.Arena

  • Utente senior
  • ****
  • Post: 616
  • DACIA DUSTER 4X4 SUPER
  • Respect: +56
    • Mostra profilo
    • ArenaWebTest
  • Dispositivo Android:
    epad m009
  • Play Store ID:
    Luigi Arena
  • Sistema operativo:
    Windows 7
Re:Chiamare activity da una dialog
« Risposta #2 il: 09 Dicembre 2011, 23:18:22 CET »
0
Grazie Verandi per i suggerimenti, ma essendo dentro una classe che estende dialog, quando richiamo un intent per richiamare un activity , mi dici che non posso usarlo.
Questo tuo suggerimento:
Codice: [Seleziona]
usi v.getContext().startActivity()
Tra le parentesi vuole un intent, ma come menzionato sopra non me lo fa mettere.

Usando questo codice, mi dice:
Citazione
No enclosing instance of the type ImpiccatoActivity is accessible in scope

Cercando in giro, ho trovato questa riga di codice java che fa al mio caso:
Codice: [Seleziona]

System.exit(0);

Passandogli lo 0 indico che sono uscito senza errori.
Solo un dubbio, mi sarei aspettato che mi chiudesse l'applicazione, invece mi ha chiuso l'activity che ha richiamato la dialog.
È stata trovata una soluzione al tuo problema?Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato .

Offline Verandi

  • Moderatore
  • Utente normale
  • *****
  • Post: 378
  • Respect: +75
    • Mostra profilo
  • Sistema operativo:
    Windows 7
Re:Chiamare activity da una dialog
« Risposta #3 il: 10 Dicembre 2011, 00:00:54 CET »
+1
Citazione
essendo dentro una classe che estende dialog, quando richiamo un intent per richiamare un activity , mi dici che non posso usarlo.
Come crei l'intent?

Codice (Java): [Seleziona]
Intent intent = new Intent(context, classe);
context.startActivity(intent);
Queste due righe puoi inserirle dove vuoi, a patto di avere un context. Visto che sei all'interno di un View.onClickListener, il context riesci a prenderlo dalla view v che ti viene passata nel metodo onClick(View v): Context context = v.getContext().

Avevo letto male. Credevo intendessi terminare l'activity. Per "killare" l'applicazione, ho visto usare:
Codice (Java): [Seleziona]
Process.killProcess(Process.myPid())


Offline Luigi.Arena

  • Utente senior
  • ****
  • Post: 616
  • DACIA DUSTER 4X4 SUPER
  • Respect: +56
    • Mostra profilo
    • ArenaWebTest
  • Dispositivo Android:
    epad m009
  • Play Store ID:
    Luigi Arena
  • Sistema operativo:
    Windows 7
Re:Chiamare activity da una dialog
« Risposta #4 il: 10 Dicembre 2011, 00:26:38 CET »
0
Mitico Verandi  :-)

Hai ragione avendo un context ho tutte le porte aperte  :-)

Grazie !!!
È stata trovata una soluzione al tuo problema?Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato .