Skip to content Skip to sidebar Skip to footer

Alertdialog Onbackpressed() Not Working Properly

I've written the following code for simple Alert Dialog but Alert Dialog doesn't show up. API: 26 @Override public void onBackPressed() { super.onBackPressed(); A

Solution 1:

Hope this code may help you!

@OverridepublicvoidonBackPressed()
    {
         AlertDialog.Builderbuilder=newAlertDialog.Builder(MainActivity.this);
        builder.setMessage("Are You sure to Exit?")
                .setTitle("Exit")
                .setCancelable(false)
                .setPositiveButton("Yes", newDialogInterface.OnClickListener() {
                    @OverridepublicvoidonClick(DialogInterface dialogInterface, int i) {
                        this.finish(); //OR super.onBackPressed(); or whatever u want

                    }
                })
                .setNegativeButton("No", newDialogInterface.OnClickListener() {
                    @OverridepublicvoidonClick(DialogInterface dialogInterface, int i) {

                    }
                });

        AlertDialogalert= builder.create();
        alert.show();
    }

Solution 2:

Use this code for exit or closing app programically

@OverridepublicvoidonBackPressed() {
        AlertDialog.BuilderalertDialogBuilder=newAlertDialog.Builder(this);
        alertDialogBuilder.setTitle("Exit Application?");
        alertDialogBuilder
                .setMessage("Click yes to exit!")
                .setCancelable(false)
                .setPositiveButton("Yes",
                        newDialogInterface.OnClickListener() {
                            publicvoidonClick(DialogInterface dialog, int id) {
                                moveTaskToBack(true);
                                android.os.Process.killProcess(android.os.Process.myPid());
                                System.exit(1);
                            }
                        })

                .setNegativeButton("No", newDialogInterface.OnClickListener() {
                    publicvoidonClick(DialogInterface dialog, int id) {

                        dialog.cancel();
                    }
                });

        AlertDialogalertDialog= alertDialogBuilder.create();
        alertDialog.show();
    }

Solution 3:

Remove super.onBackPressed();

@OverridepublicvoidonBackPressed() {
    AlertDialog.Builderbuilder=newAlertDialog.Builder(MainActivity.this);
    builder.setMessage("Are You sure to Exit?")
            .setTitle("Exit")
            .setCancelable(false)
            .setPositiveButton("Yes", newDialogInterface.OnClickListener() {
                @OverridepublicvoidonClick(DialogInterface dialogInterface, int i) {
                    MainActivity.super.onBackPressed();
                }
            })
            .setNegativeButton("No", newDialogInterface.OnClickListener() {
                @OverridepublicvoidonClick(DialogInterface dialogInterface, int i) {

                }
            });

    AlertDialogalert= builder.create();
    alert.show();
}

Post a Comment for "Alertdialog Onbackpressed() Not Working Properly"