Bonjour,
Je développe depuis un petit temps sur Android et je suis aujourd'hui confronté à un petit problème.
En résumé, il y a plusieurs listes déroulante (Spinner) sur ma vue et jusqu'à maintenant, elles étaient remplis avec un tableau de String.
Aujourd'hui, j'ai avancé dans la conception de mon application et je souhaiterais faire quelques changements.
En effet, les informations qui doivent figurer dans ces listes sont issus de mes bases SQLite.
Le problème, c'est qu'il faudrait que je puisse afficher les noms dans la liste, tout en obtenant l'id correspondant à la base SQLite.
Par exemple, imaginons que ma table soit :
departement_id | departement_ nom
------------------------------------------
1 | truc
42 | machin
103 | chose
Il faudrait que la liste déroulante affiche les noms uniquement :
> truc
> machin
> chose
Et que lorsque l'utilisateur sélectionne un champ, je puisse obtenir le numéro correspond pour pouvoir traiter les infos avec d'autres tables SQLite.
(Il peut y avoir des doublons dans les noms, alors que l'id est unique, c'est donc nécessaire).
Je peux facilement obtenir un tableau de String avec tous les noms de ma table SQLite, mais je ne vois pas comment associer chaque nom à un id.
Pouvez-vous m'aider ?
Actuellement, le bout de code pour associer un tableau de String à la liste est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 final DepartmentBDD departmentLite = new DepartmentBDD(this); departmentLite.open(); // Récupération du tableau String[] tabDep = departmentLite.getAllString(); // Référence sur la liste déroulante final Spinner listeDep = (Spinner)findViewById(R.id.listeDepartement); // Affectation du tableau à la liste déroulante ArrayAdapter adDep = new ArrayAdapter(this, android.R.layout.simple_dropdown_item_1line, tabDep); listeDep.setAdapter(adDep);
Merci d'avance.
Partager