Autore Topic: disattivare tasto indietro  (Letto 3737 volte)

Offline deideidei

  • Utente junior
  • **
  • Post: 110
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S
  • Sistema operativo:
    Ubuntu 11.04
disattivare tasto indietro
« il: 04 Febbraio 2012, 11:49:46 CET »
0
Salve ragazzi, durante l'esecuzione della mia app vorrei che il tasto indietro del telefono venga disattivato, ovvero alla pressione o al tocco di esso non succeda niente, xchè vorrei che si navigasse nell'applicazione solo con i tasti di navigazione dell'applicazione stessa.
Comme posso fare?
avete suggerimenti ?

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:disattivare tasto indietro
« Risposta #1 il: 04 Febbraio 2012, 11:58:47 CET »
+1
Codice (Java): [Seleziona]
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if ((keyCode == KeyEvent.KEYCODE_BACK)) {
        return false;
    }
    return super.onKeyDown(keyCode, event);
}

Offline Brig

  • Nuovo arrivato
  • *
  • Post: 17
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S
  • Sistema operativo:
    Ubuntu 10.4, Windows 7
Re:disattivare tasto indietro
« Risposta #2 il: 10 Febbraio 2012, 06:19:35 CET »
0
Io farei... (nell'activity)
Codice (Java): [Seleziona]
        @Override
        public void onBackPressed() {
        }

è tanto brutto?  O:-)

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
R: Re:disattivare tasto indietro
« Risposta #3 il: 10 Febbraio 2012, 09:46:06 CET »
0
Io farei... (nell'activity)
Codice (Java): [Seleziona]
        @Override
        public void onBackPressed() {
        }

è tanto brutto?  O:-)

Più che altro sui device vecchi non va..   

Inviato dal mio HTC Desire usando Tapatalk

Offline Brig

  • Nuovo arrivato
  • *
  • Post: 17
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S
  • Sistema operativo:
    Ubuntu 10.4, Windows 7
Re:R: Re:disattivare tasto indietro
« Risposta #4 il: 10 Febbraio 2012, 19:35:26 CET »
0
Più che altro sui device vecchi non va..   

Effettivamente è successo più o meno anche a me... ho un galaxyS i9003 con android 2.2.1

Il mio problema era similare.. nel senso che io sfruttavo "onBackPressed" per fare "setResult(val, intent);"... due activity su tre funzionavano, una invece (durante "onActivityResult") lanciava un NULL POINTER EXCEPTION, relativo al data (ovvero l'intent in ingresso al metodo) in quanto era null ed io effettuavo un data.getExtra...

mettendo "onKeyDown" al posto di "onBackPressed" ho risolto...
non ci speravo... anche perché non capivo dove stava il problema.. grazie indirettamente!!!  :D

ma il problema a cosa era dovuto?

Offline Ormet

  • Utente junior
  • **
  • Post: 73
  • Respect: 0
    • Google+
    • Marco Falotico
    • Mostra profilo
  • Dispositivo Android:
    HTC One S
  • Play Store ID:
    Ormet
  • Sistema operativo:
    Windows 7
Re:disattivare tasto indietro
« Risposta #5 il: 19 Febbraio 2012, 18:39:23 CET »
0
Grazie mille per il suggerimento. Avevo una domanda, sto creando un'applicazione che col tasto indietro faccia tornare alla pagina predente e col menu apra un menu da me creato. Perchè non riesco a far funzionare entrambe le procedure assieme?
Codice: [Seleziona]
@Override
           public boolean onKeyDown(int keyCode, KeyEvent loadhome) {
               Intent loadhome1 = new Intent(Totti.this, BarzelletteActivity.class);
                   startActivity(loadhome1);
               if ((keyCode == KeyEvent.KEYCODE_BACK)) {
                   return true;
               }
               return super.onKeyDown(keyCode, loadhome);
           }
       
   
    @Override
    public boolean onCreateOptionsMenu (Menu menu)
    {
            MenuInflater inflater = getMenuInflater();
            inflater.inflate(R.layout.menu, menu);
               return true;
           }
In questo caso con entrambi i tasti mi torna alla pagina precedente..

Offline Brig

  • Nuovo arrivato
  • *
  • Post: 17
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S
  • Sistema operativo:
    Ubuntu 10.4, Windows 7
Re:disattivare tasto indietro
« Risposta #6 il: 20 Febbraio 2012, 14:19:07 CET »
0
Codice (Java): [Seleziona]
@Override
           public boolean onKeyDown(int keyCode, KeyEvent loadhome) {
              if ((keyCode == KeyEvent.KEYCODE_BACK)) {
                   finish();
                   return true;
               }
               return super.onKeyDown(keyCode, loadhome);
           }

non serve lanciare l'activity precedente, in quanto era già nello stack... quindi basta chiudere quella corrente se il tasto è "back"

Offline Ormet

  • Utente junior
  • **
  • Post: 73
  • Respect: 0
    • Google+
    • Marco Falotico
    • Mostra profilo
  • Dispositivo Android:
    HTC One S
  • Play Store ID:
    Ormet
  • Sistema operativo:
    Windows 7
Re:disattivare tasto indietro
« Risposta #7 il: 20 Febbraio 2012, 23:04:12 CET »
0
ma in questo modo quando faccio capire al programma cosa è il  "KeyEvent loadhome"?