برنامه نویسی دکمه بازگشت BackButton در اندروید

Back Button

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

دکمه بازگشت

در این قسمت میخوایم نحوه تغییر رفتار دکمه بک(back)رو آموزش بدیم :

مثال

این مثال کدهایی مینویسیم تا وقتی کاربر بر روی دکمه back کلیک کند با استفاده از AlertDialog به وی هشدار داده شود که آیا واقعا قصد خروج از برنامه را دارد؟

سپس با توجه به تصمیم وی برای ماندن یا خروج که با استفاده از زدن کاربر بر روی دکمه … انجام می گیرد، در اپلیکیشن تصمیم مناسب اتخاذ می شود.

با استفاده ار اندروید استودیو یک پروژه ی جدید با نام BackButton تحت بسته ی ir.oration.backbutton ایجاد کنید. نحوه ی ایجاد پروژه ی جدید در بخش آموزشی ساخت اولین پروژه در اندروید استودیو توضیح داده شده است.

تابعی به نام onBackPressed در قسمت جاوای برنامه، نقش این را دارد تا هر وقت که بر روی دکمه بازگشت کلیک شد، کدهایی که داخل آن وجود دارد اجرا شوند.

پس در قدم اول، تابع onBackPressed را Overrid میکنیم و خودمان تابع دیگری در دل آن نوشته تا رویدادهایی که می خواهیم را در آن تابع بنویسیم. ما از اسم backButtonEvent استفاده کرده ایم.

در قسمت بعدی شروع به کد نویسی تابع backButtonEvent می کنیم.

در داخل این تابع، ابتدا یک شی از کلاس AlertDialog تعریف می کنیم و نام آن را exit می گذاریم.

سپس عنوان و نوشته ی این پیغام هشدار را تعریف می نماییم.

اکنون لازم است تا در جواب سوال آلرت دیالوگ دو دکمه مثبت و منفی ایجاد کنیم و عملیات لازم پس از کلیک بر این دو دکمه را تعریف کنیم.

ابتدا کد های حالت مثبت AlertDialog را می نویسیم:

کدهای حالت منفی AlertDialog:

کدهای کامل تابع backButtonEvent در زیر آمده است.

در زیر محتوای فایل java/ir.oration.backbutton/MainActivity.java آورده شده است.

حال نوبت آن رسیده تا با استفاده از اندروید استودیو برنامه را اجرا کنیم. برای این منظور روی آیکون Run که در نوار ابزار قرار دارد کلیک کنید.اگر همه چیز بدون مشکل پیش برود پنجره ی شبیه ساز شما مانند تصویر زیر خواهد بود.

onBackPressed

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *