Подтвердить что ты не робот

Значение по умолчанию для Android-предпочтений

Как вы получаете значение по умолчанию для Android-предпочтения, определенного в XML? Я не хочу повторять определение значения по умолчанию как в коде, так и в XML-настройках.

4b9b3361

Ответ 1

Вы можете определить значение по умолчанию в ресурсах (/values/bool.xml):

<resources>
    <bool name="mypreference_default">true</bool>
</resources>

Используйте значение в preferences.xml:

<CheckBoxPreference
    android:defaultValue="@bool/mypreference_default"
    android:key="mypreference"
    android:title="@string/mypreference_title" />

Затем используйте в коде:

SharedPreferences p = PreferenceManager.getDefaultSharedPreferences(context);
Boolean value = context.getResources().getBoolean(R.bool.mypreference_default);
Boolean b = p.getBoolean("mypreference", value);

Ответ 2

Сначала вам нужно определить значения по умолчанию в вашем XML файле предпочтений. Затем вы можете заполнить настройки значениями по умолчанию в своем основном мероприятии, вызвав:

PreferenceManager.setDefaultValues(this, R.xml.preference, false);

Когда вам нужно получить какое-то предпочтение, просто позвоните:

int value = prefs.getInt("key", null);

Поскольку ваши настройки заполнены, вы не получите значение null.

Ответ 3

Создайте integer.xml под res/values ​​для хранения целочисленных констант.

В файле prefereces.xml "@integer/default_brightness"

В коде context.getResources(). getInteger (R.integer.default_brightness)