Как сохранить данные arrayList в SharedPreferences? [Дубликат]
На этот вопрос уже есть ответ:
Сохранить ArrayList в SharedPreferences 31 ответ Я спасаюArrayList
размер и данные вSharedPreferences
. Когда я получаюArrayList
размер отSharedPreference
это дает точный размер независимо от размера, сохраняя предыдущий. Но здесь мне не удается сохранитьArrayList
данные. Когда я получаюArrayList
данные всегда дают последний элементArrayList
.
Вот мой код для сохраненияArrayList
размер и данные:
ArrayList<Items> mArrayList1 = new ArrayList<Items>();
if(mArrayList1 == 0){
mStoreItem.setItem(id);
mArrayList1.add(mStoreItem);
int size = mArrayList1.size();
System.out.println("array list size : " + size);
MyPreferences.savePreferences(getActivity(),
"arraylist_size", Integer.toString(size));
for (int i = 0; i < mArrayList1.size(); i++) {
String id = mArrayList1.get(i)
.getItem();
MyPreferences.savePreferences(getActivity(),
"id", id);
}
} else if(mArrayList1 > 0){
mStoreItem.setItem(id);
mArrayList1.add(mStoreItem);
int size = mArrayList1.size();
System.out.println("arrayList size : " + size);
MyPreferences.savePreferences(getActivity(),
"arraylist_size", Integer.toString(size));
for (int i = 0; i < mArrayList1.size(); i++) {
String id = mArrayList1.get(i)
.getItem();
MyPreferences.savePreferences(getActivity(),
"id", id);
}
}
Вот я забираю свойArrayList
Предметы
String getListSize = MyPreferences.savePreferences(getActivity(),
"arraylist_size");
System.out.println("arrayList size : " + getListSize);
if (!getListSize.equals("")) {
int listSize = Integer.parseInt(getListSize);
if (listSize > 0) {
for (int i = 0; i < listSize; i++) {
String getListitems = MyPreferences
.getPreferences(getActivity(), "id");
System.out.Println("list items : "+ getListItems);
}
}
}
Как я могу хранитьArrayList
предметы вSharedPreferences
?