Aller au contenu

2 activity, 1 base de donnee sqlite


glhu

Recommended Posts

Bonjour,

Ma question est en rapport au probleme classique de communication entre activite.

Mon application utilise une base de donnee SQLite. J'ai donc implemente' mon propre SQLiteHelper. Pour visualiser les donnees, j'utilise une ListView avec un adapter derivant de CursorAdapter. Les donnees s'affichent bien comme je le souhaite, pas de problemes particulier. Lorsque l'on 'click' sur un item de la liste, une deuxieme activity est lancee pour afficher les details de l'item selectionne'.

Mon probleme est comment recuperer les donnees de l'item dans la base pour les afficher dans ma deuxieme activity. Je vois a priori trois solutions:

1/ Si j'en crois le bouquin des tutoriaux de M.Murphy, il ne s'embete pas et cree pour sa deuxieme activity une deuxieme instance de son SQLiteHelper (en appellant getWritableDatabase()). Soit. Mais j'avoue *qu'a priori*, ca me gene un peu de d'instancier une deuxieme fois un SQLiteHelper alors que j'en ai deja un qui roupille en attendant (celui de ma ListActivity).

2/ Je pensais donc pouvoir envoyer dans l'Intent qui lance ma 2eme activity une reference a` ma premiere activity (pour acceder a` la base et autres donnees contextuelles), mais je ne vois rien qui se prete au passage de reference dans les Intent. Suis-je passer a` cote' ?

3/ Recuperer les donnees de l'item dans ma premiere activity, les stocker en extra dans l'Intent, et lancer ma deuxieme activity qui les recuperera ensuite dans son onCreate a` partir de l'Intent

Pour vous, quelle est donc l'approche a` suivre dans ce cas on-ne-peut plus classique (afficher les donnees d'un item d'une liste dans une activity 'Detail') ?

En particulier, concernant l'option 1/, est-ce un faux-probleme que je me pose (encore une fois, c'est l'approche suivie dans les tutoriaux de Marc Murphy) ?

Merci pour votre aide

Patrick

Lien vers le commentaire
Partager sur d’autres sites

Merci a` vous deux pour vos reponses.

Comme je le disais, c'est peut-etre (et surement apparemment vu vos reponses a` tous les deux) un faux probleme que je me pose :)

Mon hesitation vient surtout des resources qu'impliquerait (c'est totalement subjectif, je n'ai pas regarde') la creation d'un SQLiteHelper (ouverture d'une db, creation de cursor supplementaires, etc.).

Bon, je vais donc opter pour cette solution pour le moment. Merci !

Patrick

Lien vers le commentaire
Partager sur d’autres sites

  • 2 weeks later...

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...