Maison > Java > javaDidacticiel > le corps du texte

Android dispose-t-il d'une fonctionnalité intégrée de double-clic pour quitter ?

DDD
Libérer: 2024-11-03 20:07:02
original
180 Les gens l'ont consulté

Does Android Have a Built-in Double-Click to Exit Feature?

Bouton Retour d'Android : double-cliquez pour quitter l'activité

Dans de nombreuses applications Android, une fonctionnalité « double-cliquez pour quitter » est devenue courante . Ce mécanisme empêche les fermetures indésirables d'applications en affichant un message toast après la première pression sur le bouton de retour et en mettant fin à l'activité uniquement après un deuxième clic.

Est-ce une fonctionnalité intégrée ?

Malgré une analyse approfondie du code, vous n'avez peut-être pas réussi à localiser une fonctionnalité Android intégrée qui exécute cette fonctionnalité. Cependant, il existe une méthode simple pour la répliquer :

Implémentation personnalisée :

En conservant une variable booléenne au sein de l'activité, vous pouvez implémenter cette fonctionnalité vous-même :

<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>
Copier après la connexion

Explication :

  • Après le premier bouton de retour appuyez, doubleBackToExitPressedOnce devient true.
  • Un message s'affiche pour avertir l'utilisateur.
  • Un gestionnaire est configuré pour réinitialiser doubleBackToExitPressedOnce sur false après un délai de 2 secondes.
  • Sur le deuxième pression, l'activité se termine comme habituel.

Remarque :

Cette implémentation n'imite pas entièrement le comportement du lanceur d'application. Si l'application a été lancée via une intention, elle sera remplacée par l'intention précédente au lieu de l'écran d'accueil.

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!

source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal