Как вывести всплывающее окно только один раз за сеанс? - PullRequest
0 голосов
/ 10 июня 2019

Я хочу показывать предупреждение только один раз за сеанс.Я вызываю этот метод в onCreateView, но хочу показать это только один раз

 private void ShowDialog() {

    new SweetAlertDialog(getContext())
            .setTitleText("Attention!")
            .setContentText("Have You Checked Followup list? Check Here !!")
            .setConfirmText("Followup List")
            .setConfirmClickListener(new SweetAlertDialog.OnSweetClickListener() {
                @Override
                public void onClick(SweetAlertDialog sweetAlertDialog) {
                       ShowFollowupList();
                    sweetAlertDialog.dismissWithAnimation();

                }
            })
            .setCancelButton("Cancel", new SweetAlertDialog.OnSweetClickListener() {
                @Override
                public void onClick(SweetAlertDialog sDialog) {
                    sDialog.dismissWithAnimation();
                }
            })
            .show();
}

1 Ответ

0 голосов
/ 10 июня 2019

Сохраните значение в вашем sharedPref после входа в систему:

SharedPreferences.Editor editor = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE).edit();

editor.putBoolean ("DialogShow", false);editor.apply ();

Теперь в вашем onCreate проверьте, является ли значение this ложным или нет.

SharedPreferences prefs = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE); 
String restoredText = prefs.getBoolean("DialogShow", false);
if (restoredText) {
 showDialog();
 //Now change the value of the above sharedPref to true . and dont forget to 
 commit the change in shared Pref
}

При выходе из приложения удалите данные из sharedPref.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...