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

Android Discussion :

implementer plusieures methodes


Sujet :

Android

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    informatique, aikido
    Inscrit en
    Février 2014
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Espagne

    Informations professionnelles :
    Activité : informatique, aikido
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Février 2014
    Messages : 42
    Points : 32
    Points
    32
    Par défaut implementer plusieures methodes
    Bonjour, je voudrais savoir comment faire pour implémenter plusieurs méthodes.
    Je vous joint mon code dont seulement une des deux méthodes fonctionne.
    Mais jamais les deux.
    Je viens de voir qu'il n'est pas possible d'implémenter 2 méthodes.
    Qu'elle solution me reste t'il ?
    Qqun pourrait il m'aiguiller ?
    Merci d'avance.
    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
    package lajares.supercalculator;
     
    import android.app.Activity;
    import android.content.Context;
    import android.os.Bundle;
    import android.text.TextUtils;
    import android.view.View;
    import android.view.inputmethod.InputMethodManager;
    import android.widget.Button;
    import android.widget.EditText;
    import java.text.DecimalFormat;
     
    import org.w3c.dom.Text;
     
    public class Mesures extends Activity {
     
        EditText e1;
        EditText e2;
        EditText result;
        Button go;
        Button clear;
     
     
        private double chiffre1;
        private boolean clickOperateur = false;
        private boolean update = false;
        private String operateur = "";
     
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.mesures);
     
            InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
            imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0);
     
            e1 = (EditText) findViewById(R.id.editText3);
            e2 = (EditText) findViewById(R.id.editText4);
            result = (EditText)findViewById(R.id.result);
            go = (Button) findViewById(R.id.go);
            clear = (Button) findViewById(R.id.clear);
     
     
            go.setOnClickListener(new View.OnClickListener() {  /*premiere méthode*/
                @Override
                public void onClick(View v) {
                    double a, b, c, p, cm, c2;
                    p = 2.34;
                    a = Float.parseFloat(e1.getText().toString());
                    c = a * p;
                    e2.setText(""+ c );
     
     
                }
            });
            go.setOnClickListener(new View.OnClickListener() {   /*deuxieme méthode*/
                @Override
                public void onClick(View v) {
                    double b, d, cm;
     
                    cm = 0.37;
                    b = Float.parseFloat(e2.getText().toString());
                    d = b * cm;
                    e1.setText("" + d);
                }
            });
            clear.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    resetClick();
                }
            });
        }
        public void resetClick(){
            clickOperateur = false;
            update = true;
            chiffre1 = 0;
            operateur = "";
            e1.setText("");
            e2.setText("");
     
     
        }
     
    }
    Linux, xfce, ff, Android dev (éternel débutant).

  2. #2
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    Effectivement, il n'est possible d'affecter qu'un seul objet listener à un widget sous Android. Mais ce n'est pas vraiment un problème si tu fais l'effort de créer une vraie classe Listener, selon l'idée suivante :

    Code java : 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
     
    public class DoubleAction implements OnClickListener {
     
       private EditText e1, e2;
     
       public DoubleAction(EditText _e1, EditText _e2) {
           this.e1 = _e1;
           this.e2 = _e2;
       }
     
        @Override
        public void onClick(View v) {
            this.doSomething();
            this.doSomethingElse();
        }
     
       private void doSomething() {
                    double a, b, c, p, cm, c2;
                    p = 2.34;
                    a = Float.parseFloat(e1.getText().toString());
                    c = a * p;
                    e2.setText(""+ c );
     
     
                }
     
       private void doSomethingElse() {
                    double b, d, cm;
     
                    cm = 0.37;
                    b = Float.parseFloat(e2.getText().toString());
                    d = b * cm;
                    e1.setText("" + d);
        }
     
    }
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    informatique, aikido
    Inscrit en
    Février 2014
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Espagne

    Informations professionnelles :
    Activité : informatique, aikido
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Février 2014
    Messages : 42
    Points : 32
    Points
    32
    Par défaut
    Bonsoir Hephaistos007, merci de m'avoir répondu , à première vu ça parait intéressant
    je vais étudier ça et je te ferait un retour.
    Merci à +
    Linux, xfce, ff, Android dev (éternel débutant).

Discussions similaires

  1. Réponses: 1
    Dernier message: 06/11/2009, 00h20
  2. [PHP 5.2] Implementer plusieurs fichiers dans une boucle
    Par Mugette dans le forum Langage
    Réponses: 5
    Dernier message: 17/08/2009, 18h44
  3. Réponses: 7
    Dernier message: 29/04/2006, 15h40
  4. [débutant] appeler plusieurs methodes dans une page html
    Par soulhouf dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 24/08/2005, 19h20

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