Jump to content

Sauver une liste de classes dans une sharedpreference?


Recommended Posts

Salut.

Je me suis dans mon app, créé une liste d'éléments qui sont une certaine classe.

private ArrayList ma_liste

Est-il possible de sauvegarder celle liste dans des sharedpreference, comme je le fais facilement avec un String ou un array?

Merci car je coince vraiment là!

Edited by Profete162
Link to comment
Share on other sites

Non SharedPreference ne permet d'enregistrer que des objets élémentaires (int, boolean, String, etc.). Une technique consiste enregistrer tes objets sous la forme d'une String :

Si tu as deux instances A et B avec deux attribut entier a, b de la classe "MaClasse" dans ta liste, tu peux enregistrer un truc du genre : A.a,A.b/B.a,B.b.

Lorsqu'il s'agit de récupérer les valeurs il te suffit de parser la chaine de caractère ... c'est pas une super méthode mais ça peut te sauver.

Si c'est vraiment plus poussé, tu vas devoir te rabattre sur une base de donnée SQLite.

Link to comment
Share on other sites

en théorie c'est mort vuqe que les sharedprefs prennent des types "primaires"....

http://developer.android.com/reference/android/content/SharedPreferences.html

Et il faut savoir que les prefs sont un fichier xml...donc pas fait pour y mettre tout et n'importe quoi.

Bon en théorie si ta classe est serializable elle rentre dans un XML... donc passe par une sauvegarde perso.

edit : zut grillé par cyril....mais sinon oui dans KeepScreen je fais ça pour la liste d'applis...une chaine ou chaque appli est séparée par des [@].....(oui crade mais rapide et sans prise de tête)

Edited by popolbx
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...