Jump to content

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

Link to comment
Share on other 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

Link to comment
Share on other sites

  • 2 weeks later...

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