Maison >Java >javaDidacticiel >Comment implémenter le comportement Double-Back-to-Exit dans les activités Android ?

Comment implémenter le comportement Double-Back-to-Exit dans les activités Android ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-02 21:24:30590parcourir

How to Implement Double-Back-to-Exit Behavior in Android Activities?

Confirmation de sortie du bouton Retour dans les activités Android

Dans les applications Android, il est courant de demander aux utilisateurs d'appuyer deux fois sur le bouton Retour pour quitter le activité. Ce comportement est connu sous le nom de « double retour à la sortie ». Bien que cela puisse ressembler à une fonctionnalité intégrée, elle n'est pas directement accessible via une classe ou une méthode spécifique.

Implémentation personnalisée

Pour implémenter cette fonctionnalité, vous pouvez créez votre propre logique dans la méthode onBackPressed() de l'activité. Voici un exemple en Java :

<code class="java">boolean doubleBackToExitPressedOnce = false;

@Override
public void onBackPressed() {
    if (doubleBackToExitPressedOnce) {
        super.onBackPressed();
        return;
    }

    this.doubleBackToExitPressedOnce = true;
    Toast.makeText(this, "Please click BACK again to exit", Toast.LENGTH_SHORT).show();

    new Handler(Looper.getMainLooper()).postDelayed(new Runnable() {

        @Override
        public void run() {
            doubleBackToExitPressedOnce=false;                       
        }
    }, 2000);
} </code>

En Kotlin, vous pouvez obtenir le même résultat avec le code suivant :

<code class="kotlin">private var doubleBackToExitPressedOnce = false
override fun onBackPressed() {
        if (doubleBackToExitPressedOnce) {
            super.onBackPressed()
            return
        }

        this.doubleBackToExitPressedOnce = true
        Toast.makeText(this, &quot;Please click BACK again to exit&quot;, Toast.LENGTH_SHORT).show()

        Handler(Looper.getMainLooper()).postDelayed(Runnable { doubleBackToExitPressedOnce = false }, 2000)
    }</code>

Dans ces implémentations, nous avons un indicateur booléen (doubleBackToExitPressedOnce) qui permet de savoir si l'utilisateur a déjà cliqué sur le bouton de retour. Si l'indicateur est vrai, l'activité se termine. Sinon, nous définissons l'indicateur sur true et affichons un message toast, donnant à l'utilisateur la possibilité d'annuler l'action de sortie.

Pour éviter des clics infinis sur le bouton retour, nous utilisons un gestionnaire pour réinitialiser l'indicateur doubleBackToExitPressedOnce après un court instant. délai (par exemple, 2 secondes).

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn