Bonjour,
Je viens enfin de réussir a charger une ListView (custom) avec les données d'une bdd.
Mais maintenant, j'aimerai essayer de récuperer soit, les valeurs de l'item que j'ai selectionné, soit pendant le chargement de la listview, personnaliser des id pour les récuperer par la suite.
Car le position, c'est bien simpa, mais ma listview est dynamique :/
Voici le code de génération de la listview:
et le code de génération du tableau de valeurs:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 private void RefreshMenu(int num_codmenu){ List<Menu> values = datasource.getAllMenu(num_codmenu); Morceau_main adapter_menu = new Morceau_main(this,values); ListView listMenu = (ListView)findViewById(R.id.list_Menu); listMenu.setAdapter(adapter_menu); listMenu.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { int test = 0; // Breakpoint } }); }
J'avais pensé a rappeler getAllMenu pour recharger les données, et récuperer la bonne valeur par rapport a position, mais au niveau du breakpoint, je n'ai pas acces a la valeur num_codmenu
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 public List<Menu> getAllMenu(int num_cat_menu) { List<Menu> menus = new ArrayList<Menu>(); Cursor cursor = bdd.rawQuery("SELECT * FROM " + MaDatabase.TABLE_MENU + " WHERE " + MaDatabase.COLUMN_MENU_NUMMENU + " = ?", new String[]{(String.valueOf(num_cat_menu))}); cursor.moveToFirst(); while (!cursor.isAfterLast()) { String nomm = cursor.getString(2); String comm = cursor.getString(3); String icom = cursor.getString(4); Menu menu = new Menu(nomm, comm, icom); menus.add(menu); cursor.moveToNext(); } cursor.close(); return menus; }
Vous auriez une idée ?
Merci
Partager