Intereting Posts
Значение Google Play «Устанавливается» Чтение информации о кредитной карте PayWave через NFC на Android Модернизация ETAG и кэширование Как получить сохраненное имя контакта отправителя SMS (Person) с помощью «content: // sms / inbox» Android – fragmentTransaction.replace () не работает в библиотеке поддержки 25.1.0 Как протестировать NFC api? Различия между цветами палитры Android Использование пользовательского инструментарияTestRunner в Eclipse вызывает ошибку OnStart () и onStartCommand (), все еще вызываемые в версии 2.0 и выше Java.lang.RuntimeException: Ошибка предоставления результата ResultInfo {who = null, request = 1888, result = 0, data = null} для активности Обеспечьте безопасную аутентификацию Facebook с помощью моего сервера Websockets против GCM под Android: использование батареи? Как я могу обнаружить щелчок на заголовке ActionBar? Создание двух LinearLayouts имеет 50% экрана без использования layout_weight Документация для элемента aapt в скрипте Ant

Сохранение объекта массива в SharedPreferences

Этот метод добавляет новый объект в список массивов

//get text from textview time = date.getText().toString(); entry_d = entry.getText().toString(); dayName = day.getText().toString(); arrayList.add( new ArrayObject( dayName, entry_d ,time)); 

Я пытаюсь добавить эти 3 строки в SharedPrefrences. Вот мой код:

 private void savePreferences(String key, String value) { SharedPreferences sharedPreferences = PreferenceManager .getDefaultSharedPreferences(this); Editor editor = sharedPreferences.edit(); editor.putBoolean(key, value); editor.commit(); } 

Этот метод добавляет только одну строку за раз, когда я хочу добавить 3 строки за один раз. Есть ли какой-либо метод, который я могу реализовать.

Заранее спасибо.

Solutions Collecting From Web of "Сохранение объекта массива в SharedPreferences"

Преобразуйте свой массив или объект в Json с помощью библиотеки Gson и сохраните данные в виде строки в формате json.

Сохранить;

 SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context); Editor editor = sharedPrefs.edit(); Gson gson = new Gson(); String json = gson.toJson(arrayList); editor.putString(TAG, json); editor.commit(); 

Читать;

 SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context); Gson gson = new Gson(); String json = sharedPrefs.getString(TAG, null); Type type = new TypeToken<ArrayList<ArrayObject>>() {}.getType(); ArrayList<ArrayObject> arrayList = gson.fromJson(json, type); 

Хранить Arraylist с использованием общих настроек

 SharedPreferences prefs=this.getSharedPreferences("yourPrefsKey",Context.MODE_PRIVATE); Editor edit=prefs.edit(); Set<String> set = new HashSet<String>(); set.addAll(your Arraylist Name); edit.putStringSet("yourKey", set); edit.commit(); 

Получить Arraylist из общих настроек

 Set<String> set = prefs.getStringSet("yourKey", null); List<String> sample=new ArrayList<String>(set);