Как сохранить настройки в другом месте, кроме SharedPreferences - PullRequest
3 голосов
/ 20 марта 2010

Мое приложение используется на нескольких платформах, поэтому оно сохраняет свои настройки в файл (а не в стандартные Android SharedPreferences).

Легко ли повторно использовать PreferenceActivity для сохранения настроек в файл, или это случай создания совершенно нового действия для выполнения работы? Если дело обстоит именно так, могу ли я использовать макет, который сделает вид деятельности обычным экраном настроек? PreferenceActivity использует com.android.internal.R.layout.preference_list_content, но, по-видимому, оно недоступно для приложений для повторного использования.

Ответы [ 3 ]

4 голосов
/ 20 марта 2010

Легко ли повторно использовать PreferenceActivity для сохранения настроек в файл или это случай создания совершенно новое занятие, чтобы сделать работу?

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

Если последний случай, есть ли макет я могу использовать, что сделает активность выглядит нормально экран настроек?

Это просто ListView. Это займет у вас много больше времени, чем просто использовать SharedPreferences.

PreferenceActivity использует com.android.internal.R.layout.preference_list_content но это не похоже на доступны для приложений для повторного использования.

Конечно, это так. Если у вас установлен SDK, он сейчас находится на вашем жестком диске. Посмотрите в $ANDROID_HOME/platforms/$API/data/res/layout, где $ANDROID_HOME - это то, где у вас есть SDK, а $API - это некоторый API (например, android-2.1).

1 голос
/ 20 марта 2010

Вы можете создать функцию, которая экспортирует данные из SharedPreferences в файл.

0 голосов
/ 16 августа 2011

Обычно настройки сохраняются в общих настройках, когда пользователь нажимает на элемент предпочтения.Добавьте свой код для обновления внешнего держателя данных в функции onPreferenceTreeClick ().

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