IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Composants graphiques Android Discussion :

problème d'affectation du TIME_DIALOG_ID à tous les boutons de l'interface


Sujet :

Composants graphiques Android

  1. #1
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2012
    Messages : 15
    Points : 11
    Points
    11
    Par défaut problème d'affectation du TIME_DIALOG_ID à tous les boutons de l'interface
    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;
                }
        }

  2. #2
    Expert éminent

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Points : 9 149
    Points
    9 149
    Par défaut
    Euh ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    static final int TIME_DIALOG_ID = 0;
        static final int TIME_DIALOG_ID1 = 0;
        static final int TIME_DIALOG_ID2 = 0;
    Comment dire, pourquoi tu déclares 3 static différents si c'est pour leur attribuer la même valeur !

    Comment veux tu par la suite que ton programme arrives à les différencier ?

    De plus

    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
    @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;
                }
    onCreateDialog est une procédure que tu redéfinies pour pouvoir créer ton dialogue !

    Donc ton onCreateDialog1 et onCreateDialog2 ne servent à rien.

    Est ce que c'est la première fois que tu fais de l'objet ? Si c'est le cas je t'invites à regarder les cours sur java ainsi que sur Android que tu trouveras ici :
    http://java.developpez.com/cours/
    http://android.developpez.com/cours/
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

Discussions similaires

  1. Affecter une macro à tous les boutons
    Par Hellstyx dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 18/09/2014, 12h01
  2. Suppression de tous les boutons de commandes d'une feuille
    Par e040098k dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 04/01/2008, 19h13
  3. [VBA-E] Parcourir tous les boutons d'une feuille
    Par striky2 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 21/05/2006, 08h51
  4. Réponses: 4
    Dernier message: 08/11/2005, 17h13
  5. Réponses: 4
    Dernier message: 29/09/2005, 11h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo