Autore Topic: Gestire correttamente la pressione del tasto BACK in qualunque SDK  (Letto 9471 volte)

Offline JD

  • Amministratore
  • Utente storico
  • *****
  • Post: 1600
  • Respect: +232
    • leinardi
    • Mostra profilo
  • Dispositivo Android:
    LG Nexus 5
  • Sistema operativo:
    L'ultima Ubuntu
+5
Codice (Java): [Seleziona]
@Override
public boolean onKeyDown(int keyCode, KeyEvent event)  {
    if (android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.ECLAIR
            && keyCode == KeyEvent.KEYCODE_BACK
            && event.getRepeatCount() == 0) {
        // Take care of calling this method on earlier versions of
        // the platform where it doesn't exist.
        onBackPressed();
    }

    return super.onKeyDown(keyCode, event);
}

@Override
public void onBackPressed() {
    // This will be called either automatically for you on 2.0
    // or later, or by the code above on earlier versions of the
    // platform.
    return;
}

(fonte)
È stata trovata una soluzione al tuo problema?
Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato ;).
E se hai aperto tu il thread marcalo come risolto cliccando !

Offline softmystery

  • Utente junior
  • **
  • Post: 105
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    lg optimus one
  • Sistema operativo:
    2.2
Re:Gestire correttamente la pressione del tasto BACK in qualunque SDK
« Risposta #1 il: 10 Marzo 2011, 10:23:30 CET »
0
una curiosità ma questo codice potrebbe essere utile per chiudere un'applicazione? magari il primo dei tre codici trattato nella link di androdi developer?
grazie in anticipo

frusso

  • Visitatore
Re:Gestire correttamente la pressione del tasto BACK in qualunque SDK
« Risposta #2 il: 10 Marzo 2011, 12:31:39 CET »
0
Si certamente

QUello che ho fatto io è, alla pressione del tasto back dalla mia Activity principale e' mostrare una dialogBox che chiede se si intende uscire (o semplicemente si è sfiorato il tasto back per sbaglio). Alla pressione del tasto OK, ... finish()

Non ho il codice a porata di mano ma sono veramente due righe

Offline softmystery

  • Utente junior
  • **
  • Post: 105
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    lg optimus one
  • Sistema operativo:
    2.2
Re:Gestire correttamente la pressione del tasto BACK in qualunque SDK
« Risposta #3 il: 10 Marzo 2011, 14:15:54 CET »
0
per "activity principale" intendi che hai messo il codice di onKeyDown() solo nella prima activity che apre tutta l'applicazione?

frusso

  • Visitatore
Re:Gestire correttamente la pressione del tasto BACK in qualunque SDK
« Risposta #4 il: 10 Marzo 2011, 14:45:41 CET »
0
Si, in quella che parte quando selezioni l'icona

(per intenderci quella cha ha come intent-filter)

Codice (XML): [Seleziona]
             <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>



Offline softmystery

  • Utente junior
  • **
  • Post: 105
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    lg optimus one
  • Sistema operativo:
    2.2
Re:Gestire correttamente la pressione del tasto BACK in qualunque SDK
« Risposta #5 il: 12 Marzo 2011, 15:23:51 CET »
0
un'altra curiosità, mi servirebbe tornare indietro, ma non con il tasto fisico. ho creato uno virtuale, ho messo il onkeydown dentro ma non sò come procedere!
Codice (Java): [Seleziona]
 public void back(View Button){  
 this.onKeyDown(0, null);  
 }  
   
 @Override  
 public boolean onKeyDown(int keyCode, KeyEvent event)  {  
     if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {  
         // do something on back.  
//cosa mettere per tornare semplicemente all'activity precedente?
//la seguente istruzione non funziona
 android.os.Process.killProcess(android.os.Process.myPid()) ;  

         return true;  
     }  
   
     return super.onKeyDown(keyCode, event);  
 }

Offline JD

  • Amministratore
  • Utente storico
  • *****
  • Post: 1600
  • Respect: +232
    • leinardi
    • Mostra profilo
  • Dispositivo Android:
    LG Nexus 5
  • Sistema operativo:
    L'ultima Ubuntu
Re:Gestire correttamente la pressione del tasto BACK in qualunque SDK
« Risposta #6 il: 12 Marzo 2011, 16:08:27 CET »
+1
un'altra curiosità, mi servirebbe tornare indietro, ma non con il tasto fisico. ho creato uno virtuale [...]
Scusa, ma se usi un button non puoi semplicemente chiamare finish() per tornare indietro?
È stata trovata una soluzione al tuo problema?
Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato ;).
E se hai aperto tu il thread marcalo come risolto cliccando !

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3487
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:Gestire correttamente la pressione del tasto BACK in qualunque SDK
« Risposta #7 il: 12 Marzo 2011, 16:24:12 CET »
0
un'altra curiosità, mi servirebbe tornare indietro, ma non con il tasto fisico.

Tutti i dispositivi android devono avere il tasto back fisico, touch o qualunque esso sia. Cosa vuol dire che non ce l'hai?

Offline softmystery

  • Utente junior
  • **
  • Post: 105
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    lg optimus one
  • Sistema operativo:
    2.2
Re:Gestire correttamente la pressione del tasto BACK in qualunque SDK
« Risposta #8 il: 12 Marzo 2011, 21:42:16 CET »
0
Tutti i dispositivi android devono avere il tasto back fisico, touch o qualunque esso sia. Cosa vuol dire che non ce l'hai?
non ho scritto che non c'è l'ho... ma che devo mi servirebbe un tasto virtuale indietro..... comunque già.... finish().... non c'avevo pensato.....

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3487
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:Gestire correttamente la pressione del tasto BACK in qualunque SDK
« Risposta #9 il: 12 Marzo 2011, 21:58:58 CET »
0
non ho scritto che non c'è l'ho... ma che devo mi servirebbe un tasto virtuale indietro..... comunque già.... finish().... non c'avevo pensato.....

Hai ragione ho letto male, scusa  :-X

Offline junior87

  • Nuovo arrivato
  • *
  • Post: 27
  • Respect: 0
    • Mostra profilo
  • Sistema operativo:
    ubuntu win7
Re:Gestire correttamente la pressione del tasto BACK in qualunque SDK
« Risposta #10 il: 28 Ottobre 2011, 11:46:44 CEST »
0
scusate ragà ma sapete come funzione il tasto lock ???? se c'è keyevent. ke si riferisce al tasto lock.... o devo usare la libreria keyguardmanager???

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3487
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:Gestire correttamente la pressione del tasto BACK in qualunque SDK
« Risposta #11 il: 28 Ottobre 2011, 12:06:56 CEST »
+1
Hai già aperto un tuo thread, aspetta che qualcuno ti risponda li.

Offline Dj Tribunus

  • Nuovo arrivato
  • *
  • Post: 14
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Google Nexus S
  • Sistema operativo:
    Windows 7, Ubuntu 1
Re:Gestire correttamente la pressione del tasto BACK in qualunque SDK
« Risposta #12 il: 07 Dicembre 2011, 01:04:10 CET »
0
Scusate ma per qualche motivo a me questo codice mi blocca semplicemente il tasto back senza farmi uscire nulla?

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:Gestire correttamente la pressione del tasto BACK in qualunque SDK
« Risposta #13 il: 07 Dicembre 2011, 09:12:04 CET »
0
Scusate ma per qualche motivo a me questo codice mi blocca semplicemente il tasto back senza farmi uscire nulla?

Domanda forse stupida: lo snippet prevede che tu aggiunga il codice per le funzioni che vuoi eseguire quando premi back, ce le hai messe oppure hai semplicemente copiato solo lo snippet?
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline Dj Tribunus

  • Nuovo arrivato
  • *
  • Post: 14
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Google Nexus S
  • Sistema operativo:
    Windows 7, Ubuntu 1
Re:Gestire correttamente la pressione del tasto BACK in qualunque SDK
« Risposta #14 il: 07 Dicembre 2011, 11:10:59 CET »
0
Domanda forse stupida: lo snippet prevede che tu aggiunga il codice per le funzioni che vuoi eseguire quando premi back, ce le hai messe oppure hai semplicemente copiato solo lo snippet?
Ecco perchè uno non deve programmare alle 2 di notte,perchè fa solo minchiate!Hai ragione scusatemi...risolto ;)