Aller au contenu

[Résolu]Lien SQLite et Spinner


Recommended Posts

Bonjour,

Je débute en programmation android et j'ai vu qu'il est apparemment possible de relier une table SQLite à un Spinner.

Pour l'instant j'ai ma BDD créée et une table dedans nommée "ouvriers" avec trois champs "_id", "nomouvrier" et "prenomouvrier".

J'aimerai avoir quelques explications avec exemples si possible pour comprendre comment récupérer les données et les insérer dans un Spinner car pour l'instant j'arrive juste à prendre les données d'un fichier arrays.xml .

Mon but est qu'un spinner affiche les noms et prénoms des ouvriers contenus dans la BDD dans le but qu'on puisse choisir par la suite l'ouvrier que l'on souhaite.

Merci d'avance pour votre aide. :)

Modifié par Elth
Lien vers le commentaire
Partager sur d’autres sites

Merci du conseil,

Je ne connais vraiment pas le principe des cursors mais j'ai essayé d'adapter un extrait de code à mon programme mais au final la liste est vide alors que la BDD est remplie c'est certain.

Voici le code d'affichage du Spinner :

          Uri uriOuvrier = Uri.parse("content://fr.in3.android.GestionHoraires/DBOuvrier"); 
          Cursor curAll = managedQuery(uriOuvrier, null, null, null, "nomouvrier"); 

          Nom = (Spinner) findViewById(R.id.noms);  

          SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,  
                  android.R.layout.simple_spinner_item, curAll,  
                  new String[] { "nomouvrier" }, new int[] { android.R.id.text1 }); 

         adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);  
         Nom.setAdapter(adapter); 

Ma base de données se nomme DBOuvrier et ici pour l'instant j'essaye juste d'afficher le nomouvrier.

Quelqu'un pourrait me dire ce qui ne vas pas, ce qu'il faut modifier pour que le Spinner soit remplie des noms contenues dans la bdd ?

Merci.

Lien vers le commentaire
Partager sur d’autres sites

  • 3 weeks later...

J'ai trouvé et bien avancé depuis mais je met le code au cas où ça puisse aider un futur vagabond qui trainerait le même problème que j'ai eu =)

        dbouvrier = new DBOuvrier(this);
       dbouvrier.open();

       Nom = (Spinner) findViewById(R.id.noms); 
       Nom.setOnItemSelectedListener(this);
       Cursor curnoms = dbouvrier.recupererLaListeDesOuvriers();
       startManagingCursor(curnoms);
       SimpleCursorAdapter adapter1 = new SimpleCursorAdapter(this,  
               android.R.layout.simple_spinner_item, curnoms,  
               new String[] { "nomouvrier"}, new int[] { android.R.id.text1}); 

       adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);  
       Nom.setAdapter(adapter1); 

       dbouvrier.close();

Bonne chance à ceux qui seraient confrontés à ce problème.

En espérant que ceci vous avance déjà un peu.

Lien vers le commentaire
Partager sur d’autres sites

  • 9 months later...

merci pour ce code j'aurrai besoin, maintenant je cherche à creer ma base de donnée comme t'as realisé j'ai essayé plusieurs codes mais en vain surtout que je suis debutante dans ce domaine...je serai reconnaissante si tu m'expliques comment t'as fais exactement...je ne sais pas si tu consulte ce forum encore ou pas si oui aides moi et s'il y'as d'autre qui lisent mon mon message m'aide j'ai besoin vraiment de support...merci d'avance mes chers

Lien vers le commentaire
Partager sur d’autres sites

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