minimoack | Bonjour,
J'aimerais afficher dans une vue, 2 colonnes : une colonne "date", et une colonne "formations".
Ces données sont récupérées grâce à une requête.
Mon problème : je ne sais pas s'il faut que j'utilise une liste, ou un tableau, je n'arrive pas non plus à afficher mon tableau ou ma liste (j'ai essayé avec les 2).
Mon code :
Code :
- //Création d'un tableau à 2 colonnes
- private String[][] lesFormations = {};
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_display_message_formations_proposees);
- final DataBaseHelper myDbHelper = new DataBaseHelper(this);
- //Tests sur la création et l'ouverture de la base de données
- try
- {
- myDbHelper.createDataBase();
- Log.i("test", "createDataBase" );
- } catch (IOException ioe){
- throw new Error("Unable to create database" );
- }
- try
- {
- myDbHelper.openDataBase();
- Log.i("test", "openDataBase" );
- } catch(SQLException sqle){
- throw sqle;
- }
-
-
- SQLiteDatabase db = myDbHelper.getReadableDatabase();
-
- //Récupération de la liste créée dans la vue
- //ListView listeFormations = (ListView) findViewById(R.id.lvFormationsProposees);
-
- //Exécution de la requête récupérant la description et la date de chaque formation dans la table Formations de la base de données
- String reqVerif = "select description, date from Formations;";
-
- Cursor resultat = db.rawQuery(reqVerif, null);
- //On crée 2 integers : nbResultats qui prend pour valeur le nombre d'occurrences renvoyés par la requête et i, un compteur
- int nbResultats = resultat.getCount()-1;
- int i;
- Log.i("test", String.valueOf(nbResultats));
- //On se place au niveau de la première occurrence
- resultat.moveToFirst();
- //On fait une boucle For : pour i allant de 0 à nbResultats, on ajoute les occurrences retournées par la requête au tableau
- for (i=0; i<=nbResultats; i++)
- {
- Log.i("test", String.valueOf(i));
- Log.i("test", resultat.getString(0));
- Log.i("test", resultat.getString(1));
- lesFormations[i][0] = resultat.getString(0);
- lesFormations[i][1] = resultat.getString(1);
- resultat.moveToNext();
- }
- //listeFormations.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_single_choice, lesFormations));
- System.out.println(lesFormations);
- }
|
Les commentaires en rouge représentent ce que j'ai essayé avec les listes (à la place du system.out.println(lesFormations) )
ça me met un force to close avec la liste, et un écran noir avec le tableau...
Merci ! |