Bonsoir,
Je souhaiterai connaitre le choix fait par l'utilisateur entre mes 2 boutons radio afin d'effectuer un calcul personnalisé.
Pour le moment en suivant le tutoriel fournit sur le Developer's guide, je n'arrive qu'à afficher la valeur (Homme/Femme) au sein de ma méthode radio_listener = new OnClickListener() mais pas dans le onClick principal, celui où l'utlisateur valide la calcul.
Voici une partie du code
Initialiation des bouton:
Méthode m'affichant simplement le texte du bouton radio choisit (si possible je souhaiterai la shooter et effectuer ce test dans le onClick pincipal)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 RadioButton radio_H = (RadioButton) findViewById(R.id.radio_H); RadioButton radio_F = (RadioButton) findViewById(R.id.radio_F); radio_H.setOnClickListener(radio_listener); radio_F.setOnClickListener(radio_listener);
Le onClick au sein duquel à l'idéal je souhaiterai connaitre le choix de l'utilisateur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 public OnClickListener radio_listener = new OnClickListener() { public void onClick(View v) { // Perform action on clicks RadioButton HF = (RadioButton) v; Toast.makeText(IMG.this, HF.getText(), Toast.LENGTH_SHORT).show(); } };
Pour le moment la valeur du bouton radio s'affiche simplement sans un Toast mai mes test " HF.getText() == "Homme" " ne fonctionne pas et font donc planter l'activité.
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
17
18
19
20
21
22
23
24
25
26
27
28
29
30 public void onClick(View v) { RadioButton HF = (RadioButton) v; switch (v.getId()) { case R.id.validerImc: poid = Integer.parseInt(Poid.getText().toString()); taille = Integer.parseInt(Taille.getText().toString()); age = Integer.parseInt(Age.getText().toString()); taille = taille / 100; IMC = (poid / (taille * taille)); if (HF.getText() == "Homme") { IMG = ((1.2 * IMC) + (0.23 * age) - (10.83 * 1) - 5.4); resultatIMG.setText(Double.toString(IMG)); } else { IMG = ((1.2 * IMC) + (0.23 * age) - (10.83 * 0) - 5.4); resultatIMG.setText(Double.toString(IMG)); } break; } };
Merci et bonne soirée
Partager