آموزش برنامه نویسی اندروید (Android)
۴۱۹ آموزش
نمایش دسته بندی ها (۴۱۹ آموزش)

پرسیدن اطمینان از خروج، هنگام اشاره به دکمه بازگشت (Back) ، در برنامه اندروید

حتما در برنامه های مختلف، مشاهده کرده اید که هنگامی که در activity اصلی برنامه اندروید هستیم، هنگام اشاره کاربر بر روی دکمه back ، قبل از خروج از برنامه، از کاربر سوال می شود که آیا واقعا می خواهد از برنامه خارج شود یا خیر. این مورد بسیار مهم است، زیرا ممکن است کاربر، به اشتباه، بر روی دکمه اشاره کرده باشد. این مورد تنها کاربرد اینگونه پیام ها نیست و مثلا فرض کنید که کاربر در وسط یک بازی، به اشتباه، به دکمه back اشاره کند، اگر سریعا به activity قبلی بازگردد، دوباره باید بازی را از اول شروع کند (دیوانه کننده است!). بنابراین باید قبل از خروج از activity ، از وی پرسش شود که آیا واقعا می خواهد خارج شود یا خیر. پس نتیجه می گیریم که اینگونه پیام ها، برای موارد مختلفی باید به کار رود.

کدهای زیر، یک پیام به کاربر نمایش می دهد و از وی می پرسد که آیا واقعا می خواهد از برنامه خارج شود یا خیر، اگر کاربر جوابش مثبت باشد، از برنامه خارج می شود و اگر بر روی گزینه مربوط به خیر، اشاره کند، پیام بسته شده و در همان activity (ادامه اجرای آن) باقی می ماند :


package com.kelidestan.example;
 
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.widget.Toast;
 
public class AndroidBackButtonActivity extends Activity {
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        Toast.makeText(getApplicationContext(),"http://www.kelidestan.com", Toast.LENGTH_LONG).show();
    }
 
    @Override
    public void onBackPressed() {
        //Display alert message when back button has been pressed
        backButtonHandler();
        return;
    }
 
    public void backButtonHandler() {
        AlertDialog.Builder alertDialog = new AlertDialog.Builder(
                AndroidBackButtonActivity.this);
        // Setting Dialog Title
        alertDialog.setTitle("Leave application?");
        // Setting Dialog Message
        alertDialog.setMessage("Are you sure you want to leave the application?");
        // Setting Icon to Dialog
        alertDialog.setIcon(R.drawable.dialog_icon);
        // Setting Positive "Yes" Button
        alertDialog.setPositiveButton("YES",
                new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int which) {
                        finish();
                    }
                });
        // Setting Negative "NO" Button
        alertDialog.setNegativeButton("NO",
                new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int which) {
                        // Write your code here to invoke NO event
                        dialog.cancel();
                    }
                });
        // Showing Alert Message
        alertDialog.show();
    }
}
نویسنده علیرضا گلمکانی
شماره کلید 235
گزینه ها
به اشتراک گذاری (Share) در شبکه های اجتماعی
نظرات 0 0 0

ارسال نظر جدید (بدون نیاز به عضو بودن در وب سایت)