2013-03-06 5 views
1

Я спас ArrayList пользовательских объектов в общих настройках, как это:магазин Список_массивов обычая объектов

SharedPreferences prefs = context.getSharedPreferences("prefName", Context.MODE_PRIVATE); 
Editor editor = prefs.edit(); 
editor.putStringSet("myList", new Gson().toJson(arraylist).toString()); 
editor.apply(); 

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

+1

Естественно старые значения не будет. Если вам нужно добавить, то вам нужно прочитать оригинальные, добавить новые и сохранить обратно. –

+0

@AleksG .. okay man i реализую это .. Спасибо – Noman

ответ

1

Читать myList из prefName, добавьте arraylist к тому, что уже был сохранен в настройках обратной записи myList предпочтениям.

+0

okay man i реализую это. Спасибо – Noman

0

Этот код может быть вам полезен.

SharedPreferences setting=context.getSharedPreferences("prefName", Activity.MODE_PRIVATE); 
SharedPreferences.Editor edit=setting.edit(); 
edit.putStringSet("myList", new Gson().toJson(arraylist).toString()); 
edit.commit(); 
+0

всякий раз, когда вы хотите изменить значение, введите этот код в метод. вызовите этот метод еще раз. –

+0

Мне бы очень хотелось узнать, кто откликнулся на этот ответ, потому что он ничего не делает, кроме замены 'apply()' by 'commit()', что определенно не является причиной этой проблемы. Напротив, это может даже создать удар производительности в потоке пользовательского интерфейса. –

+0

его работа в моем случае. –

0

Я ВГА сталкивался с этой проблемой раньше ... Использование дженериков будет добавлять значение, а не заменяя старые ДАННЫЕ ....

+0

Как использовать дженерики? – Noman

+0

@Noman Просьба прочитать, как использовать дженерики в java .. Это может быть полезно для ваших будущих проблем ... – kajothan

+0

@kajothan ... Я сделал это, сохранив в prefs ... Спасибо – Noman

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