Как может PreferenceActivity использовать файл пользовательских настроек
Моя первая попытка предпочтений была без знания PreferenceActivity
. Итак, теперь у меня есть приложение, которое хранит все пользовательские настройки в определенном файле предпочтений.
Я хочу перейти на использование PreferenceActivity, но я также хочу, чтобы мои пользователи сохраняли свои предпочтения.
Есть ли способ сообщить моей PreferenceActivity использовать этот конкретный файл для всех настроек?
Ответы
Ответ 1
Вы можете прочитать все настройки в начале своего приложения, а затем сохранить их в Preferences
с помощью
Editor e = PreferenceManager.getDefaultSharedPreferences(getBaseContext()).edit();
e.putBoolean("yourPreference", true);
e.putString("yourOtherPreference", "This is the Value");
...
e.commit();
Я надеюсь, что это поможет
Ответ 2
Возможно, слишком поздно опубликовать это сообщение, но здесь вы можете найти хорошее решение.
Предварительно задайте имя файла предпочтений по умолчанию:
public class MyPreferencesActivity extends PreferenceActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
PreferenceManager prefMgr = getPreferenceManager();
prefMgr.setSharedPreferencesName("my_preferences");
prefMgr.setSharedPreferencesMode(MODE_WORLD_READABLE);
addPreferencesFromResource(R.xml.preferences);
}
}
Надеюсь, это поможет кому-то.
С уважением.
Ответ 3
Maaalte правильно, что вы хотите сделать, это onCreate test для существования вашего настраиваемого файла, и если он там, переименуйте его в стандартное имя файла общих предпочтений.
Другой вариант - прочитать ваши старые префы один за другим и использовать API общих настроек, чтобы добавить их, когда вы их читаете, а затем удалите старые префы, когда закончите.