Где сохранить предпочтительные ключи Android?

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

SharedPreferences appPreferences = PreferenceManager.getDefaultSharedPreferences(this);
boolean foo_value = appPreferences.getBoolean("foo_key_defined_in_xml", false);

Там какой-либо путь состоит в том, чтобы не ссылаться на "foo_key_defined_in_xml" трудно кодированным способом? Возможно, существует возможность сослаться на него в стиле R путь (для не обращения для строкового представления)?

56
задан gobernador 8 July 2016 в 14:29
поделиться

3 ответа

Я обнаружил, что можно хранить ключи в strings.xml и ссылаться на них из preferences.xml , как и все другие значения android: key = "@ string / preference_enable" .

В коде вы можете обратиться к ключу, набрав getString (R.string.preference_enable)

Вы можете пометить строку, которая не будет переводиться, с помощью тега . См. Контрольный список локализации

<string name="preference_enable"><xliff:g id="preference_key">enable</xliff:g></string>
71
ответ дан 26 November 2019 в 17:25
поделиться

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

Пример , приведенный в документации SDK, делает то же самое, что и то, что вы указали в своем примере,

1
ответ дан 26 November 2019 в 17:25
поделиться

Попробуйте getString (R.string.key_defined_in_xml) .

1
ответ дан 26 November 2019 в 17:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: