диалоговое окно оповещения после другого диалогового окна оповещения Первый отсутствует! андроид

У меня есть действие (ImportActivity), где пользователь вводит некоторые значения для меры и сохраняет их в базе данных sqlite.

Когда пользователь нажимает кнопку «Сохранить» после импорта в базу данных, у меня появляется диалоговое окно с предупреждением (SAVEORBACK_DIALOG_ID), где пользователь может покинуть эту операцию или импортировать другую меру. Это работает отлично.

Моя проблема, когда я пытаюсь показать другое диалоговое окно оповещения (SMS_DIALOG_ID) непосредственно перед (SAVEORBACK_DIALOG_ID) диалоговое окно оповещения. Это потому, что я хочу попросить пользователя отправлять или нет смс.

Когда я запускаю это, это показывает мнеonly the second alert dialog(SAVEORBACK_DIALOG_ID) !!

ImportActivity this is final dialog

Я имею в деятельности:

    static final int DATE_DIALOG_ID = 0;
static final int TIME_DIALOG_ID = 1;
static final int SAVEORBACK_DIALOG_ID = 2;
static final int SMS_DIALOG_ID = 3;

Я звоню им из моей деятельности:

        // sms dialog(send sms to doctor?yes/no)
        showDialog(SMS_DIALOG_ID);

        // save or back dialog
        showDialog(SAVEORBACK_DIALOG_ID);

вот метод onCreateDialog, где у меня есть мои диалоги (я удалил некоторые, чтобы их было легче читать):

    @Override
protected Dialog onCreateDialog(int id) {
    switch (id) {
    case DATE_DIALOG_ID:
        return new DatePickerDialog(this, mDateSetListener, mYear, mMonth,
                mDay);
    case TIME_DIALOG_ID:
        return new TimePickerDialog(this, mTimeSetListener, mHour, mMinute,
                false);
    case SAVEORBACK_DIALOG_ID:
        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setMessage(
                "Information saved successfully ! Add Another Info?")
                .setCancelable(false)
                .setPositiveButton("No",
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                ImportActivity.this.finish();

                            }
                        })
                .setNegativeButton("Yes",
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                dialog.cancel();
                                // get the new date
                                // Clearing the fields & update date/time
                                // textviews
                            }
                        });
        AlertDialog dialog = builder.create();
        return dialog;

        // case sms dialog
    case SMS_DIALOG_ID:
        AlertDialog.Builder builder2 = new AlertDialog.Builder(this);
        builder2.setMessage("High blood pressure ! Send sms to doctor?")
                .setCancelable(false)
                .setPositiveButton("No",
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                dialog.cancel();
                                // do nothing - just continue
                            }
                        })
                .setNegativeButton("Yes",
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog,
                                    int id) {
                                dialog.cancel();
                                // try to send sms - report status
                            }
                        });
        AlertDialog dialog2 = builder2.create();
        return dialog2;
        //

    }
    return null;
}

Ответы на вопрос(1)

Ваш ответ на вопрос