7

Я создал PreferenceActivity на основе xml для PreferenceScreen. В xml вы можете назначать значения по умолчанию для разных предпочтений. Но они не сохраняются в моих SharedPreferences до того, как экран будет открыт и закрыт.Как сделать SharedPreferences из PreferenceActivity установленным по умолчанию в Android?

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

Есть ли способ сохранить все настройки из экрана предпочтений xml, не заставляя пользователя открывать и закрывать активность предпочтений?

Я знаю, что вы можете указать значение по умолчанию при получении предпочтений из SharedPreferences, но глупо поддерживать значения по умолчанию как в xml, так и в коде.

ответ

13

Просто используйте этот код в классе Application.

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

Она будет загружать ваши предпочтения из XML, и последний параметр (readAgain) будет гарантировать, что пользовательские настройки не будут перезаписаны. Вам необходимо сохранить параметры по умолчанию в файле R.xml.preference.

Просмотрите PreferenceManager.setDefaultValues в API Android для дальнейшего изучения.

+0

Только то, что я искал, спасибо! – Gober 2010-11-30 13:12:53

 Смежные вопросы

  • Нет связанных вопросов^_^