خانه اندروید

800 ساعت آموزش اختصاصی

بیش از 30 هزار دانشجو

آموزش های پروژه محور

مطالب پیشنهادی حتما مشاهده کنید :

سوال موقع خروج کاربر از اکتیویتی متد ()onBackPressed

سوال موقع خروج کاربر از اکتیویتی متد ()onBackPressed

سوال موقع خروج کاربر از اکتیویتی متد ()onBackPressed

خروج از اکتیویتی متد onBackPressed

متد ()onBackPressed ، در این پست  از سایت خانه اندروید قصد داریم متدی را به شما معرفی کنیم که کاربرد بسیار زیادی در پروژه های اندرویدی ما دارد از این متد بیشتر برای جلوگیری از خروج از اکتیویتی استفاده می شود بدین ترتیب که شما فرض کنید اپلیکیشن یا بازی را طراحی کردید و کاربر یکباره با لمس دکمه back گوشی خود از اپلیکیشن ما خارج می شود یا اینکه تغییراتی در اکتیویتی که کاربر در آن هست داده شده و پس از برخورد انگشت از برنامه خارج می شود پس اینجاست که باید چاره بیندیشم . پس اینجاست که از متد ()onBackPressed استفاده می کنیم و از اون سوالی می پرسیم که این سوال قبلا آموزش داده شده است همان پیغامی که به اسم AlertDialog.Builder شناخته می شود.

پیشنهاد ویژه برای هرچه بهتر یادگیری این آموزش لطفا فیلم آموزشی زیر را ببنید :

آلرت دیالوگ AleartDialog اندروید استودیو

آموزش استفاده از متد ()onBackPressed:

همان طور در بالا معرفی شد این متد هنگام فشرده شدن دکمه back گوشی فراخوانی می شود پس ما کاری که قرار انجام بدیم پیغامی (مسج باکست) هست که در موقع فشرده شدن دکمه بک باید فراخوانی کنیم تا کاربر انتخاب کند آیا قصد خروج دارد  یا خیر ؟ اگر اون روی بلی کلیک کند از اکتیویتی (اپلیکیشن  و بازی ) خارج می شود.در غیر این صورت اگر روی خیر کلیک کند در جایی هست که باقی می ماند.

نحوه کد نویسی متد ()onBackPressed:

تنها کاری که قرار است ما انجام دهیم نوشتن تابعی است که قرار است پس از فشرده شدن دکمه بک گوشی فراخوانی شود:پس سورس کد زیر را تایپ و یا کپی کنید در اکتیویتی که می خواهد هنگام فشردن دکمه بک فراخوانی شود :

public void mesg_box_exit()
 {
 
 AlertDialog.Builder Alert_close = new AlertDialog.Builder(Main2Activity.this);
 Alert_close.setTitle("هشدار")
 .setMessage("آیا قصد خروج دارید؟")
 .setPositiveButton("بله", new DialogInterface.OnClickListener() {
 @Override
 public void onClick(DialogInterface dialog, int which) {
 finish();
 }
 })

 .setNegativeButton("خیر", new DialogInterface.OnClickListener() {
 @Override
 public void onClick(DialogInterface dialog, int which) {
 dialog.cancel();

 }
 })
 .show();
 }

 }

پس از کپی و یا نوشتن سورس کد بالا نوبت به فراخوانی تابع زیر است:

 

()public void mesg_box_exit

سپس باید  متد ()onBackPressed فراخوانی کنیم برای این کار Ctrl+O را از صفحه کلیک فشار دهید سپس متد ()onBackPressed را انتخاب کنید وسپس دستورات داخل براکت {} باز بسته رو بنویسید و یا اینکه سورس کد زیر را کپی کنید:

@Override
public void onBackPressed() {
    mesg_box_exit();
    return;
    }

موفق باشید.

خانه اندروید

 

درباره نویسنده

جواد محمدی هستم بنیان‌گذار سایت خانه اندروید در خدمتون هستیم با آموزش و مفاهیم برنامه نویسی اندروید-نزدیک به 10 سال هست در حوزه برنامه نویسی فعالیت می کنم. مسلط به kotlin,java,flutter,php هستم . در خانه اندروید دانستی های خودم را در اختیار تمامی علاقمندان به برنامه نویسی قرار میدم.تشکر از اینکه خانه اندرورید رو دنبال می کنید.

قبل از ارسال دیدگاه

  • قبل از ارسال دیدگاه: لطفا دیدگاه خودتون رو فقط در مورد این مطلب بنویسید.سپاسگزارم.

    دیدگاه های طولانی نادیده گرفته می شوند لذا دیدگاه خودتان را در دو خط خلاصه کنید.

    دیدگاه های که شامل توهین یا متن توهین آمیز اصلا تایید نمی شود.

    به دیدگاه های بی نام و نشان که ایمیل فیک و نام فیک وارد می کنند پاسخ داده نمی شود

2 دیدگاه

  1. مهدی گفت:

    ممنون واقعا کاربردی بود