Aller au contenu

Recommended Posts

Posté(e)

J'ai un petit soucis technique :

J'ai une Activity qu'on va appeller "List".

Elle contient "visuellement" une liste d' "Objet"

Mais elle a aussi un modèle de données avec une ArrayList d' "Objet" avec l'Adapter qui va bien

Je veux par exemple pouvoir éditer un élément de la liste en cliquant dessus :

- j'ai crée une Activity "Edit", le layout qui contient des champs de texte pour éditer mon "Objet"

- dans mon Activity "List", je crée un Intent, je lui "put" mon "Objet" en tant que Serializable

- dans mon Activity "Edit", je recupere mon "Objet", dans le onResume, je rempli les champs depuis l' "Objet", dans le onPause je rempli l' "Objet" depuis les champs

Sauf que : je me suis planté :P

Comme c'est du Serializable, j'ai 2 "Objet" différents : celui contenu dans la liste et celui que j'édite

Donc forcément, celui dans la liste n'est pas modifié :P

Je dois surement m'y prendre très mal, mais je pense que vous avez compris ce que je voulais faire.

Comment vous faites pour réaliser ça ?

Merci !

Posté(e) (modifié)

Je viens de voir Parcelable, mais ça m'a l'air d'être un Serializable à la sauce Android...

Moi je veux garder la même "adresse mémoire"

Edit : je viens de penser à un truc tout bête :

je n'ai jamais 2 "Edit" en même temps

donc il me suffit d'une variable static dans Edit, et de lui filer mon "Objet" à chaques fois ...

Modifié par Pierre87
Posté(e)

bon ba pour info, ma technique "static" marche :P

pas forcement propre, mais très rapide !

en plus, il suffit qu'une fois que l'Activity Edit est crée, de copier "en local" (pas en static) l' "Objet" pour ne pas avoir de probleme.

Posté(e)

Tu veux dire : stocker "en mémoire" dans mon objet Application la liste des Connection ?

Ouais ça pourrait le faire, j'aurais juste besoin de passer l'index de la Connection à éditer dans ce cas...

Posté(e)

En base de données, ca me parait plus chaud...

Il faut avoir une fonction pour sérialiser / désérialiser ton objet en type simple que tu peux stocker dans ta base.

Ca fait du boulot pour pas grand chose si tu n'en as pas besoin à coté...

Pierre : Tu chipotes pour le 'en mémoire' :)

Emmanuel / Alocaly

Posté(e)

En gros, j'aurais bien aimé pouvoir passer la référence de mon objet dans l'Intent.

Mais ce n'est pas possible :P

Je ne voulais pas le Serializer, car ça n'aurait pas été le même objet "en mémoire"

Donc ce que j'ai fait :

- J'ai mis ma liste d' "Objet" dans un endroit "accessible à tous"

- Je transmets entre mes Activity l'index de l' "Objet" dans la liste

Posté(e)

design pattern singleton ?

ca reviendrait a faire ta liste en statique et a l interroger en fct d une clef. donc tu as surement bon avec ta mthode. (ta clef etant l index )

Posté(e)

je ne trouve pas le singleton adapté dans mon cas :s

et je n'aime pas l'utiliser, sauf dans des cas très précis ...

De toute manière, j'ai un objet Application, qui est accessible dans toutes mes Activity

Je m'en sert pour tout centraliser : reseau, vibration, liste de connexions, etc ...

Donc ça revient au même

Rejoignez la conversation

Vous pouvez poster maintenant et vous enregistrez plus tard. Si vous avez un compte, connectez-vous maintenant pour poster.

Invité
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...