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 :

Action sur un bouton android


Sujet :

Composants graphiques Android

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 49
    Points : 37
    Points
    37
    Par défaut Action sur un bouton android
    Bonjour à tous je découvre depuis ce weekend Android et eclipse en suivant different tutoriaux.

    Voila je voulais savoir comment on definit une action sur mon bouton je suppose que c'est entre <button></button> ???

    par exemple : modifier le text de mon textview en mettant un nouveau texte



    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
    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >
    <TextView  
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:text="@string/hello"
        />
    <Button android:id="@+id/Button01" android:layout_height="wrap_content" android:layout_width="fill_parent" android:text="test"></Button>
    <CheckBox android:text="@+id/CheckBox01" android:id="@+id/CheckBox01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#FFFF0000"></CheckBox>
     
     
     
    <TextView android:text="test" android:id="@+id/TextView01" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
    </LinearLayout>

    Cordialement,
    bypbop

  2. #2
    Membre éclairé Avatar de LeXo
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 147
    Points : 868
    Points
    868
    Par défaut
    si ce que tu veux faire, c'est une action sur le click de ton bouton alors ça ne se passe pas côté layout mais côté activity, il me semble...
    Plzzz pas de questions par MP.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 49
    Points : 37
    Points
    37
    Par défaut
    Merci Lexo et ou ce trouve ce côté "activity" ??

    Cordialement,
    bypbop

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 77
    Points : 34
    Points
    34
    Par défaut
    dans tes codes insère ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NOMBP=setOnClickListener(new OnClickListener()       )
    tu as 2 partie, 1 pour les frames l'autre pour les codes java.

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 49
    Points : 37
    Points
    37
    Par défaut
    ok je vois c'est sur mon main.java que je dois agir

    la j'essaye au chargement de mon application de modifier le text du textview01 mais ca ne fonctionne pas pourquoi cela ?


    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
    package com.test.Bonjour;
     
    import android.app.Activity;
    import android.os.Bundle;
    import android.widget.TextView;
    import android.widget.Button;
     
    public class Main extends Activity {
        /** Called when the activity is first created. */
     
     
     
    	private Button Button01;
        private TextView TextView01;
    	@Override
     
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            Button01 = new Button(this);
            TextView01 = new TextView(this);
     
            TextView01.setText("tesstttt");
            setContentView(R.layout.main);
     
    	}
     
    }

    Cordialement,
    bypbop

  6. #6
    Membre confirmé
    Homme Profil pro
    IUT Informatique
    Inscrit en
    Mars 2011
    Messages
    412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : IUT Informatique

    Informations forums :
    Inscription : Mars 2011
    Messages : 412
    Points : 486
    Points
    486
    Par défaut
    T'as défini un button et un textView dans ton main.xml non?

    Si c'est le cas, ton setContentView tu le met au début, et après tu récupères ton button et textview définie dans le main.xml

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 49
    Points : 37
    Points
    37
    Par défaut
    oui ils sont dans mon main.xml

    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
    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >
     
     
    <CheckBox android:text="@+id/CheckBox01" android:id="@+id/CheckBox01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#FFFF0000"></CheckBox><TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" />
     
     
     
     
    <Button android:text="@+id/Button01" android:id="@+id/Button01" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
     
     
     
    </LinearLayout>

    par contre quad je veux modifier ma textview dans mon code ca ne fonctionne pas

    mon main.java

    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
    package com.test.Bonjour;
     
    import android.app.Activity;
    import android.os.Bundle;
    import android.widget.TextView;
    import android.widget.Button;
     
    public class Main extends Activity {
        /** Called when the activity is first created. */
     
     
     
    	Button Button01;
        TextView TextView01;
    	@Override
     
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
     
     
            Button01 = new Button(this);
            TextView01 = new TextView(this);
     
            TextView01.setText("Testtt");        
     
     
     
    	}
     
    }

  8. #8
    Membre confirmé
    Homme Profil pro
    IUT Informatique
    Inscrit en
    Mars 2011
    Messages
    412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : IUT Informatique

    Informations forums :
    Inscription : Mars 2011
    Messages : 412
    Points : 486
    Points
    486
    Par défaut
    Si je me trompe pas c'est normal, parce que le textfield (tout comme le bouton) tu en crée une nouvelle instance qui n'a rien à voir avec ceux définie dans ton main.xml ... Du coup ceux que tu vois à ton ecran sont pas ceux que tu crées dans ton code mais ceux crée dans le xml, donc tu modifie ton textfield crée dans le code, et ca modifie pas celui du xml qui est celui qui s'affiche.

    D'ailleur t'as pas de textView dans ton main.xml...

    Tu dois remplacer

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Button01 = new Button(this);
    TextView01 = new TextView(this);
    par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Button01 = (Button)findViewByID(R.id.Button01);
    TextView = (TextView)findViewByID(R.id.TextView01);
    Mais pense à rajouter un TextView dans ton main.xml et vérifie que son id est bien celui que tu mettra dans ton code après le R.id.

    Et pour chaque élément que tu place dans ton main.xml, si tu veux avoir accès à des fonctions dessus, il faut que crée une instance du même type dans ton code et que tu le lie grâce à findViewByID(R.id.[l'id que t'as choisie dans le .xml]

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 49
    Points : 37
    Points
    37
    Par défaut
    Merci bcp j'ai enfin compris ;-) cela fonctionne...

    Peux tu m'expliquer comment par exemple modifier la valeur de ma textview sur un clique sur le bouton sur ce mm projet par exemple.

    Cordialement,
    bypbop

  10. #10
    Membre confirmé
    Homme Profil pro
    IUT Informatique
    Inscrit en
    Mars 2011
    Messages
    412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : IUT Informatique

    Informations forums :
    Inscription : Mars 2011
    Messages : 412
    Points : 486
    Points
    486
    Par défaut
    T'es débutant en JAVA?

    Faudrait que tu te documente sur les cours, ça expliquera mieux que moi mais je peux te faire un petit topo.

    En gros, tu va devoir placer un écouteur sur ton bouton. Il servira à savoir à quel moment tu clique sur le bouton, et dès qu'il va repérer un clique sur le bouton il va lancer une fonction qui effectuera ce que tu veux.

    Il faut que tu te penche sur le OnClickListener.

    Tu aura deux possibilité. Soit ta classe tu la fait implémenter de OnClickListener:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public class Main extends Activity implement OnClickListener
    Et tu verra, tu devra implémenter des méthode, dont une certaine onClick.
    Soit tu définira ton listener de façon discret (je sais plus trop le terme utilisé à la place de discret).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    monBouton.setOnClickListener(new View.OnClickListener()
    {
    private onClick(View arg0, unAutreArgument arg1)
    {
    //Ton code lors du clic
    }
    });
    La syntaxe je m'en rappel plus trop, mais grâce aux raccourci de Eclipse (si tu utilise Eclipse) aident pour la syntaxe. Mais je te conseil quand même de lire des cours, tu comprendra beaucoup mieux

  11. #11
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 49
    Points : 37
    Points
    37
    Par défaut
    Merci oui je suis débutant Java jamais utiliser avt ce weekend ;-)

    je vais regarder ca ;-)

    encore merci pour ton aide.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Action sur un bouton..Je comprends plus rien du tout!
    Par koolway dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 26/04/2006, 10h17
  2. Action sur un bouton
    Par DarkHope dans le forum AWT/Swing
    Réponses: 10
    Dernier message: 25/04/2006, 15h54
  3. Action sur un bouton
    Par brasco06 dans le forum Composants
    Réponses: 1
    Dernier message: 19/11/2005, 20h15
  4. [debutant] action sur un bouton
    Par EssaiEncore dans le forum ASP
    Réponses: 22
    Dernier message: 18/02/2005, 14h02
  5. [Flash MX] Action sur un bouton
    Par WriteLN dans le forum Flash
    Réponses: 9
    Dernier message: 20/10/2003, 14h01

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