This is simple example how to implement double-click on back button to exit the application. There will be a message alerting you that clicking again on back button will exit.
This is a standard Java code for executing this feature:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
private boolean doubleBackToExitPressedOnce = false; @Override public void onBackPressed() { if (doubleBackToExitPressedOnce) { super.onBackPressed(); return; } this.doubleBackToExitPressedOnce = true; Toast.makeText(this, "Press back again to exit", Toast.LENGTH_SHORT).show(); new Handler().postDelayed(new Runnable() { @Override public void run() { doubleBackToExitPressedOnce = false; } }, 2000); } |
And here we use Java Lambda:
1 2 3 4 5 6 7 8 9 10 |
@Override public void onBackPressed() { if (doubleBackToExitPressedOnce) { super.onBackPressed(); return; } this.doubleBackToExitPressedOnce = true; Toast.makeText(this, "Press back again to exit", Toast.LENGTH_SHORT).show(); new Handler().postDelayed(() -> doubleBackToExitPressedOnce = false, 2000); } |
And here is an example using Kotlin in Android:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
class HomeActivity : AppCompatActivity() { private var doubleBackToExitPressedOnce: Boolean = false override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main2) } override fun onBackPressed() { if (doubleBackToExitPressedOnce) { super.onBackPressed() return } this.doubleBackToExitPressedOnce = true Toast.makeText(this, "Press back again to exit", Toast.LENGTH_SHORT).show() Handler().postDelayed({ doubleBackToExitPressedOnce = false }, 2000) } } |