Salut,
j'ai une interface Android contenant 3 boutons en cliquant sur un de ces 3 un TIME_DIALOG_ID s'affiche pour me permettre de choisir une heure .
Le problème que j'ai c'est qu'en cliquant sur un bouton pour choisir une heure, celle-ci (l'heure choisie) apparait sur les 3 boutons. Or qu'elle doit apparaitre seulement dans le bouton sur le quel j'ai cliqué.
Voila le code que j'ai réalisé:
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
package Project.Android.Activities;
 
import java.util.Calendar;
 
import Project.Android.R;
import android.app.Activity;
import android.app.DatePickerDialog;
import android.app.Dialog;
import android.app.TimePickerDialog;
import android.content.Intent;
import android.graphics.Color;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.ScrollView;
import android.widget.Spinner;
import android.widget.TimePicker;
 
public class Ajoutmedicamentdutraitement extends Activity{
 
	private int mHour;
    private int mMinute;
	private int mHour1;
    private int mMinute1;
	private int mHour2;
    private int mMinute2;
    static final int TIME_DIALOG_ID = 0;
    static final int TIME_DIALOG_ID1 = 0;
    static final int TIME_DIALOG_ID2 = 0;
 
 
	private Button btnheurematin;
	private Button btnheuremidi;
	private Button btnheuresoir;
 
 
 
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.mainajoutmedicamentdutraitement);
        //changer le titre de la page
        setTitle("AJOUT MEDICAMENT");
        //changer la couleur du fond d'écran du titre
        View title = getWindow().findViewById(android.R.id.title);
        View titleBar = (View) title.getParent();
        titleBar.setBackgroundColor(Color.GREEN);
 
 
        btnheurematin = (Button) findViewById(R.id.btnheurematin);
        btnheuremidi = (Button) findViewById(R.id.btnheuremidi);
        btnheuresoir = (Button) findViewById(R.id.btnheuresoir); 
 
        btnheurematin.setOnClickListener(new View.OnClickListener() {
 
            public void onClick(View v) {
                showDialog(TIME_DIALOG_ID);
            }
        });
 
        btnheuremidi.setOnClickListener(new View.OnClickListener() {
 
            public void onClick(View v) {
                showDialog(TIME_DIALOG_ID1);
            }
        });
 
        btnheuresoir.setOnClickListener(new View.OnClickListener() {
 
            public void onClick(View v) {
                showDialog(TIME_DIALOG_ID2);
            }
        });
 
        final Calendar c = Calendar.getInstance();
        mHour = c.get(Calendar.HOUR_OF_DAY);
        mMinute = c.get(Calendar.MINUTE);
       final Calendar c1 = Calendar.getInstance();
        mHour1 = c1.get(Calendar.HOUR_OF_DAY);
        mMinute1 = c1.get(Calendar.MINUTE);
        final Calendar c2 = Calendar.getInstance();
        mHour2 = c2.get(Calendar.HOUR_OF_DAY);
        mMinute2 = c2.get(Calendar.MINUTE);
    }
 
    TimePickerDialog.OnTimeSetListener mTimeSetListener =
            new TimePickerDialog.OnTimeSetListener() {
 
                public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
                    mHour = hourOfDay;
                    mMinute = minute;
                    updateDisplay();
                    mHour1 = hourOfDay;
                    mMinute1 = minute;
                    updateDisplay1();
                    mHour2 = hourOfDay;
                    mMinute2 = minute;
                    updateDisplay2();
 
                }
            };
 
 
            private void updateDisplay() {
            	btnheurematin.setText(
                    new StringBuilder()
                            .append(mHour).append(":")
                            .append(mMinute));
            }
 
            private void updateDisplay1() {
            	btnheuremidi.setText(
                    new StringBuilder()
                            .append(mHour1).append(":")
                            .append(mMinute1));
 
            }
 
            private void updateDisplay2() {
            	btnheuresoir.setText(
                    new StringBuilder()
                            .append(mHour2).append(":")
                            .append(mMinute2));
            }
 
 
            @Override
            protected Dialog onCreateDialog(int id) {
                 switch (id) {
                 case TIME_DIALOG_ID:
 
                     return new TimePickerDialog(this,  mTimeSetListener, mHour, mMinute, false);
 
                 }
                 return null;
             }
           protected Dialog onCreateDialog1(int id) {
                 switch (id) {
                 case TIME_DIALOG_ID1:
 
                     return new TimePickerDialog(this,  mTimeSetListener, mHour1, mMinute1, false);                    
                 }
                 return null;
             }
            protected Dialog onCreateDialog2(int id) {
                switch (id) {
                case TIME_DIALOG_ID2:
 
                    return new TimePickerDialog(this,  mTimeSetListener, mHour2, mMinute2, false);                    
                }
                return null;
            }
    }