Не модно и не интересно делать кнопку "Выход" в приложении, сейчас все вешают выход на нажатие кнопки Назад, то есть на метод onBackPressed(). Есть два способа сделать красивый выход...
Вообще в Android нет термина выход или закрытие приложения, есть только Принудительное закрытие, точнее говоря убить приложение, а это выглядит некрасиво
Приходится обходиться методом finish() только закрыть активити или же просто свернуть приложение.
Вообще в Android нет термина выход или закрытие приложения, есть только Принудительное закрытие, точнее говоря убить приложение, а это выглядит некрасиво
Приходится обходиться методом finish() только закрыть активити или же просто свернуть приложение.
1. Выход с AlertDialog
Код:@Override public void onBackPressed() { AlertDialog.Builder alertDialog = new AlertDialog.Builder(MainActivity.this); alertDialog.setTitle("Выйти?"); alertDialog.setMessage("Вы действительно хотите выйти?"); alertDialog.setPositiveButton("Да", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog,int which) { Intent intent = new Intent(Intent.ACTION_MAIN); intent.addCategory(Intent.CATEGORY_HOME); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(intent); } }); alertDialog.setNegativeButton("Нет", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { dialog.cancel(); } }); alertDialog.show(); return; }Результат:2. Выход с двойным нажатием кнопки Back
Код такой:private static long back_pressed; . . . . . . . @Override public void onBackPressed() { if (back_pressed + 2000 > System.currentTimeMillis()) super.onBackPressed(); else Toast.makeText(getBaseContext(), "Нажмите еще раз чтобы выйти", Toast.LENGTH_SHORT).show(); back_pressed = System.currentTimeMillis(); }Результат кода:Как вы видите в первом случае выход организован так, что он только сворачивает приложение, вообще то можно было сделать его с методом finish(), но после него будет так: активити с которой вы придете на главный в котором приложение будет закрываться, при след открытии откроется не главная, а та с которой вы пришли, а это неудобно пользователю, вот так как-то...
Комментариев нет:
Отправить комментарий