رتبه موضوع:
  • 1 رای - 5 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
خروج کامل از برنامه و جلوگیری از خروج اتفاقی
#1
حتماً برای شما هم پیش اومده که یه برنامه رو اشتباهی با زدن دکمه Back گوشی بسته باشین. اینجور وقتها اینکه برنامه از شما سؤال کنه آیا مطمئن هستی میخوای خارج بشی؟ میتونه مفید باشه. ازطرفی با زدن دکمه Back ممکنه برنامه کامل بسته نشه و فقط اصطلاحاً Minimize شده باشه. برای حل این دو مشکل، میتونید از تکه کد زیر توی اکتیویتی اصلی برنامه (یا هر اکتیویتی دیگه که کاربر توی اون امکان خروج داره) استفاده کنید:

private Boolean exit = false;
@Override
public void onBackPressed() {
   if (exit) {
       finish(); // finish activity
   } else {
       Toast.makeText(this, "Press Back again to Exit.", Toast.LENGTH_SHORT).show();
       exit = true;
       new Handler().postDelayed(new Runnable() {
           @Override
           public void run() {
               exit = false;
           }
       }, 3000);
   }
}

نکته: اگه کارهایی دارین که در پس‌زمینه اجرا میشن (مثل یه تایمر که باید در زمانهای مشخصی کارها رو انجام بده یا هر سرویس دیگه) و نمیخواین با بسته‌شدن برنامه همچنان به کارشون ادامه بدن، میتونید قبل از صدازدن finish توی if، اونها رو غیرفعال کنید.
پاسخ
تشکر شده توسط: Thorin , YN97 , Eshpilen , GTAexcess , mazda




کاربران در حال بازدید این موضوع: 2 مهمان