Bonjour,
J'apprends à utiliser le SDK de Google et me voilà confronté à un symptôme dont je ne trouve pas réponse sur Google ni dans mon code.
J'ai un menu avec deux items et lorsque je clique sur l'item numéro 1, il m’exécute les actions des deux items.
Voici un screenshot du menu :
Le problème survient lorsqu'on appuie sur "A propos".
Vous pouvez voir, ci-dessous qu'il ouvre le "A propos" avec connexion au-dessus :
Voici le code :Quelqu'un saurait-il m'indiquer d'où peut venir le problème ?
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.menu1, menu); return true; } @Override public boolean onMenuItemSelected(int featureId, MenuItem item) { switch(item.getItemId()) { case R.id.item1: showDialog(DIALOGUE_A_PROPOS); case R.id.item2: showDialog(CONNEXION); } return true; } @Override protected Dialog onCreateDialog(int id) { AlertDialog.Builder builder; switch(id) { case CONNEXION : builder = new AlertDialog.Builder(this); final View view_connexion = getLayoutInflater().inflate(R.layout.connexion, null); builder.setView(view_connexion); builder.setTitle("Connexion"); builder.setNegativeButton(android.R.string.cancel, null); builder.setPositiveButton(R.string.connexion, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { EditText edit_pseudo = (EditText) view_connexion.findViewById(R.id.champPseudo); EditText edit_password = (EditText) view_connexion.findViewById(R.id.champPassword); connexion(edit_pseudo.getText().toString(), edit_password.getText().toString()); } }); return builder.create(); case DIALOGUE_A_PROPOS : builder = new AlertDialog.Builder(this); builder.setTitle("A propos de l'appli"); builder.setPositiveButton(android.R.string.ok, null); View view_a_propos = getLayoutInflater().inflate(R.layout.apropos, null); builder.setView(view_a_propos); return builder.create(); } return null; } public void connexion(String pseudo, String password) { Toast.makeText(Main.this, pseudo+"-"+password, Toast.LENGTH_LONG).show(); }
Merci d'avance pour votre aide.
Partager