Я создаю настраиваемое диалоговое окно оповещения.Проблема в том, что я не вызываю dialogInterface.dismiss ();в методе setPositiveButton () мой диалог все еще закрывается после нажатия положительной кнопки.Итак, я не могу выполнить дальнейшую операцию с ним.
Почему это происходит и как я могу заставить "положительную" кнопку делать вещи.
public void changePassword() {
LayoutInflater layoutInflater = getLayoutInflater();
View alertChangePassLayout = layoutInflater.inflate(R.layout.change_password_alertdialog_layout, null);
final EditText oldPasswordET = alertChangePassLayout.findViewById(R.id.old_password_ET_alert_dialog);
final EditText newPasswordET = alertChangePassLayout.findViewById(R.id.new_password_ET_alert_dialog);
final EditText confirmNewPasswordET = alertChangePassLayout.findViewById(R.id.confirm_new_password_ET_alert_dialog);
Button changePasswordButton = alertChangePassLayout.findViewById(R.id.change_password_BB_alert_dialog);
AlertDialog.Builder alertBuilder = new AlertDialog.Builder(dialog_activity.this);
alertBuilder.setTitle("Change Password");
// Set view of xml inside alert dialog
alertBuilder.setView(alertChangePassLayout);
// disable dismiss dialog when clicked outside the dialog
alertBuilder.setCancelable(false);
// Set positive button
alertBuilder.setPositiveButton("Submit", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
Toast.makeText(dialog_activity.this, "Submit button..", Toast.LENGTH_LONG).show();
// do work here
}
});
// Set negative button
alertBuilder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
Toast.makeText(dialog_activity.this, "Cancel button..", Toast.LENGTH_LONG).show();
dialogInterface.dismiss();
}
});
AlertDialog alertDialog = alertBuilder.create();
alertDialog.show();
}