Skip to content

Instantly share code, notes, and snippets.

@webserveis
Last active September 21, 2016 13:31
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save webserveis/9bdf579a131628834af75921edfe3d39 to your computer and use it in GitHub Desktop.
Save webserveis/9bdf579a131628834af75921edfe3d39 to your computer and use it in GitHub Desktop.
Android: sistema doble pulsación para salir

Pulsar dos veces atrás para salir

Método para integrar un sistema de pulsación doble para salir de la app en Android. Para ello debermos sobrescrivir el evento de llamanda onBackPresed()

  private long firstClickTime;
  ...
  @Override
  public void onBackPressed() {
    if (firstClickTime + Constants.TIME_INTERVAL > System.currentTimeMillis()) {
        super.onBackPressed();
        return;
    } else {
        Toast.makeText(this, getString(R.string.double_back_pressed), Toast.LENGTH_SHORT).show();
    }
    firstClickTime = System.currentTimeMillis();

Si la app tiene un drawableMenu

  @Override
  public void onBackPressed() {
      DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
      if (drawer.isDrawerOpen(GravityCompat.START)) {
          drawer.closeDrawer(GravityCompat.START);
      } else {

          if (firstClickTime + Constants.TIME_INTERVAL > System.currentTimeMillis()) {
              super.onBackPressed();
              return;
          } else {
              Toast.makeText(this, getString(R.string.double_back_pressed), Toast.LENGTH_SHORT).show();
          }
          firstClickTime = System.currentTimeMillis();

      }
  }
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment