Home > Java > javaTutorial > How to Implement Double-Back-to-Exit Behavior in Android Activities?

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

Linda Hamilton
Release: 2024-11-02 21:24:30
Original
595 people have browsed it

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

Back Button Exit Confirmation in Android Activities

In Android applications, it is common to require users to press the back button twice to exit the activity. This behavior is known as "double-back-to-exit". While it may seem like a built-in feature, it is not directly accessible through any specific class or method.

Custom Implementation

To implement this functionality, you can create your own logic within the activity's onBackPressed() method. Here's an example in 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>
Copy after login

In Kotlin, you can achieve the same result with the following code:

<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>
Copy after login

In these implementations, we have a boolean flag (doubleBackToExitPressedOnce) that keeps track of whether the user has already clicked the back button. If the flag is true, the activity exits. Otherwise, we set the flag to true and display a toast message, giving the user a chance to cancel the exit action.

To avoid infinite back button clicks, we use a Handler to reset the doubleBackToExitPressedOnce flag after a short delay (e.g., 2 seconds).

The above is the detailed content of How to Implement Double-Back-to-Exit Behavior in Android Activities?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template