Cómo guardar los datos de arrayList en SharedPreferences?
Estoy ahorrando el tamaño y los datos del arraylist en sharedPreference. Cuando estoy recuperando el tamaño del arraylist de sharedpreference que da el tamaño exacto cuál nunca el ahorro anterior del tamaño. Pero aquí estoy fallando en guardar datos de Arraylist. Cuando estoy recuperando los datos del arraylist él siempre Dando el último artículo de arraylist.
Aquí está mi código para guardar el tamaño y los datos de Arraylist:
- ¿Restablecer SharedPreferences?
- Cómo mostrar sólo una vez Iniciar sesión y luego después de iniciar la aplicación directamente en android
- Manejo de varias instancias de appwidget
- Cómo utilizar los datos almacenados en las preferencias compartidas de la clase que no sea de actividad
- registerOnSharedPreferenceChangeListener no funciona para los cambios realizados en diferentes procesos
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); } }
Aquí estoy recuperando mis artículos de 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); } } }
Este es mi código lo malo en mi código ¿cómo puedo almacenar los arraylistitems en sharedpreference cualquiera por favor guíame …
- Preferencias compartidas - longitud máxima de un solo valor
- ¿Cómo puedo compartir un archivo SharedPreferences a través de dos aplicaciones de Android diferentes?
- ¿Cuál es la diferencia entre commit () y apply () en Shared Preference
- Cómo analizar ANR en sharedPreferences
- No se puede poner doble SharedPreferences
- Poner y obtener la matriz de cadenas de las preferencias compartidas
- Problema al guardar las preferencias compartidas en Android
- Cómo comprobar si existe o no el archivo SharedPreferences
prueba esto.
//Set the values Set<String> set = new HashSet<String>(); set.addAll(mArrayList1); scoreEditor.putStringSet("key", set); scoreEditor.commit(); //Retrieve the values Set<String> set = new HashSet<String>(); set = myScores.getStringSet("key", null);
Esta pregunta ya respondió debajo de hilo., Guardar ArrayList a SharedPreferences
public void addTask(Task t) { if (null == currentTasks) { currentTasks = new ArrayList<task>(); } currentTasks.add(t); //save the task list to preference SharedPreferences prefs = getSharedPreferences(SHARED_PREFS_FILE, Context.MODE_PRIVATE); Editor editor = prefs.edit(); try { editor.putString(TASKS, ObjectSerializer.serialize(currentTasks)); } catch (IOException e) { e.printStackTrace(); } editor.commit(); }
public void onCreate() { super.onCreate(); if (null == currentTasks) { currentTasks = new ArrayList<task>(); } // load tasks from preference SharedPreferences prefs = getSharedPreferences(SHARED_PREFS_FILE, Context.MODE_PRIVATE); try { currentTasks = (ArrayList<task>) ObjectSerializer.deserialize(prefs.getString(TASKS, ObjectSerializer.serialize(new ArrayList<task>()))); } catch (IOException e) { e.printStackTrace(); } catch (ClassNotFoundException e) { e.printStackTrace(); } }
Aquí u cambia la clase de tarea como itemclass.
- No "Configuración del proyecto" en "Estructura del proyecto"
- Proyecto de limpieza no corrigiendo errores de R.java (Android)