Настройки приложения Android не работают - PullRequest
0 голосов
/ 26 декабря 2011

Я реализовал некоторые настройки приложения для своего приложения.Для строк они отлично работают, но не для булевых значений.Например,

public class MdSharedPrefs {
    public final static String PREFS_NAME = "prefs";

    public static boolean getSSFlag(Context context) {
        SharedPreferences prefs = context.getSharedPreferences(PREFS_NAME, 0);

        return prefs.getBoolean(context.getString(R.string.pref_key_ss), false);
    }

    public static void setSSFlag(Context context, boolean newValue) {
        SharedPreferences prefs = context.getSharedPreferences(PREFS_NAME, 0);
        Editor prefsEditor = prefs.edit();
        prefsEditor.putBoolean(context.getString(R.string.pref_key_ss),
                newValue);
        prefsEditor.commit();
    }

}

И для этого требуется

<string name="pref_key_ss"></string>

в strings.xml.Когда я удаляю эту строку, проект не компилируется.Но когда я оставляю это, этот логический преф не работает.Когда я нажимаю на него и возвращаюсь к главному экрану, а затем возвращаюсь к настройкам, значение не проверяется.

Однако для строк это работает нормально.

Есть идеи, что случилось?

1 Ответ

2 голосов
/ 26 декабря 2011

в моем приложении, которое я использую, вот так, оно работает нормально

объявление

 private static final String SUNDAY_ON = "sunday_selected";

получение

 state = prefs.getBoolean(SUNDAY_ON, false);

хранение, как это

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