web-dev-qa-db-fra.com

comment désactiver le bouton de retour dans Android

je fais une application d'échange ... Je veux désactiver le bouton de retour. donc j'utilise ce code ... et passe l'intention à lui ..

@Override
public boolean onKeyDown(int keyCode, KeyEvent event)  {
    if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
        // do something on back.
        return true;
    }

    return super.onKeyDown(keyCode, event);
}

mais en cours d’exécution lorsque j’appuie sur le bouton précédent de l’émulateur, l’activité est mise à jour, mais lorsque je réappuie sur le bouton précédent, il passe à la page d’accueil de l’émulateur.

13
Sam
@Override
public void onBackPressed() {
    // do nothing.
}
62
Saurabh Pareek
    @Override
        public void onBackPressed() {
            //super.onBackPressed();
            if(SOME_CONDITION_TO_CHECK){
                //THIS BLOCK WILL NOT DO ANYTHING AND WOULD DISABLE BACK BUTTON

            }else{
                super.onBackPressed();
//THIS BLOCK WILL BE CALLED IF ABOVE COND IS FALSE, AND WOULD ENABLE BACK BUTTON
            }

        }
17
Ali

Avez-vous essayé onBackPressed ()?

@Override
public void onBackPressed() {
       // Do as you please
}
6
Klaus

Ceci est ma solution Cela fonctionne avec Android 2.2

remplacez onBackPressed () ...

public void onBackPressed() {
   // check if you are in the right mode 
   if (getCurrentState() == FORM_STATE_BROWSE ) {
       // ok do default back action
       super.onBackPressed();
   }

   // exit skipping "onBackPressed()"
   return;
}
3
Stefano

Vous devez ajouter un retour pour que cela fonctionne avec succès sur tous les appareils, ma note 3 & htc revient quand même si je n'inclus pas le retour!

  @Override
        public void onBackPressed() {
             return;
        }
2
Petro

Par exemple, si vous souhaitez passer à une activité en appuyant sur le bouton Précédent, remplacez cette méthode dans votre activité

 @Override
    public void onBackPressed() {
        // do nothing.
        Intent intent = new Intent(SocialPlugIns.this, MainActivity.class);
        Log.i("Hello", "This is Coomon Log");
        startActivity(intent);
           return;
    }
1
Kirtikumar A.

Vous devez remplacer la fonction onBackPressed(). Ci-dessous je donne un moyen:

   @Override
    public void onBackPressed() {
       //make some alert for the user
    }
0