Autore Topic: tasto back dialog su ultima activity  (Letto 506 volte)

Offline superfox

  • Nuovo arrivato
  • *
  • Post: 28
  • Respect: 0
    • Mostra profilo
tasto back dialog su ultima activity
« il: 05 Gennaio 2015, 13:33:59 CET »
0
Ciao a tutti ragazzi, come faccio a far visualizzare un dialog
di conferma di uscita dall'app solo dalla 1 activity che era stata avviata?
Ovvero avviando diverse activity, dovrebbe comparire solo sull'ultima
distrutta?

Offline Aaaaabbbb

  • Utente junior
  • **
  • Post: 55
  • Respect: +3
    • Google+
    • pietmau
    • Mostra profilo
  • Dispositivo Android:
    Nexus 7, Samsung GT-S5830i, LG Optimus, Galaxy Tab 3
  • Play Store ID:
    aaaaaaaaaaaa
  • Sistema operativo:
    Win, Ubuntu
Re:tasto back dialog su ultima activity
« Risposta #1 il: 05 Gennaio 2015, 14:18:06 CET »
0
mmm...non mi è chiaro...

Offline superfox

  • Nuovo arrivato
  • *
  • Post: 28
  • Respect: 0
    • Mostra profilo
Re:tasto back dialog su ultima activity
« Risposta #2 il: 05 Gennaio 2015, 14:32:04 CET »
0
Nel mio progetto avvio diverse activity, tipo ne avvio 5 diverse. Se schiaccio
tasto back si chiude l'ultima, la penultima e cosi via. La mia domanda era: come faccio a visualizzare
un dialog di conferma uscota dell'app premendo il tasto back
solo quando chiuderei la prima activity avviata?

Offline GabMarioPower

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 606
  • Respect: +152
    • Github
    • Google+
    • gabrielemariotti
    • GabMarioPower
    • Mostra profilo
  • Play Store ID:
    GAB+MARIO+DEV
  • Sistema operativo:
    Ubuntu 14.04 , Win 10
Re:tasto back dialog su ultima activity
« Risposta #3 il: 05 Gennaio 2015, 14:33:53 CET »
0
Ciao a tutti ragazzi, come faccio a far visualizzare un dialog
di conferma di uscita dall'app solo dalla 1 activity che era stata avviata?
Ovvero avviando diverse activity, dovrebbe comparire solo sull'ultima
distrutta?

Tieni presente che c'è solo una Activity attiva in un preciso momento.
Quindi gestisci il codice dentro l'Activity dove vuoi che compaia il messaggio.

Tieni anche in considerazione due aspetti:
- i dialog e popup in genere sono odiosi
- un dialog di conferma di "uscire" dall'app è un bel anti pattern in Android

Offline Aaaaabbbb

  • Utente junior
  • **
  • Post: 55
  • Respect: +3
    • Google+
    • pietmau
    • Mostra profilo
  • Dispositivo Android:
    Nexus 7, Samsung GT-S5830i, LG Optimus, Galaxy Tab 3
  • Play Store ID:
    aaaaaaaaaaaa
  • Sistema operativo:
    Win, Ubuntu
Re:tasto back dialog su ultima activity
« Risposta #4 il: 05 Gennaio 2015, 14:46:45 CET »
0
Premesso che le osservazioni di Gabriele sono assolutamente corrette,
ecco il codice per fare l'override di onBackPressed()
che è da mattere nell'attività in questione, nell' "ultima".

Codice (Java): [Seleziona]
@Override
public void onBackPressed() {
  AlertDialog.Builder builder = new AlertDialog.Builder(TuaAttivita.this);
        builder.setMessage("Conferi che vuoi uscire?")
               .setPositiveButton("OK, usciamo", new DialogInterface.OnClickListener() {
                   public void onClick(DialogInterface dialog, int id) {
                      TuaAttivita.super.onBackPressed(); //Ora chiudiamo veramente
                   }
               })
               .setNegativeButton("No, non usciamo", new DialogInterface.OnClickListener() {
                   public void onClick(DialogInterface dialog, int id) {
                       // Non succede nulla
                   }
               });
        builder.create().show();:
}

Ciao!