У меня есть следующий код в моем методе onActivityForResult
после добавления контакта с использованием намерения.
if (mySharedPrefs.getBoolean("settingsPopup", false) == false) { //First time
new AlertDialog.Builder(this)
.setTitle("Go to settings? ")
.setMessage("POPUP")
.setNegativeButton("No", null)
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
Intent settingsIntent = new Intent(MainActivity.this, Settings.class);
startActivity(settingsIntent);
}
}).show();
myEditor = mySharedPrefs.edit();
myEditor.putBoolean("settingsPopup", true);
myEditor.commit();
}
Я хочу, чтобы это всплывающее окно отображалось только один раз, поэтому я установил значение общего значения привилегий "settingsPopup" в true после того, как я впервые открою диалог. По какой-то причине, однако, диалог показывает каждый раз метод onActivityForResult
вызывается. Почему он отображается каждый раз?
PS: Я использую один и тот же общий объект предпочтения для хранения других значений.
Изменить
Я инициализирую свои общие привилегии в onCreate
следующим образом:
mySharedPrefs = this.getSharedPreferences("sharedPrefsName", MainActivity.MODE_PRIVATE); //Making a shared preferences