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 :

Comment implémenter des boutons dans des fragments ?


Sujet :

Composants graphiques Android

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2010
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 21
    Points : 16
    Points
    16
    Par défaut Comment implémenter des boutons dans des fragments ?
    Bonjour à tous,

    Je souhaiterais réaliser une application qui utilise PagerAdapter et ViewPager.

    Je souhaiterais diviser mon écran en deux partie :
    -- la partie supérieure à la moitié de mon écran contient des icones, images et boutons ("partie statique de mon IHM")
    -- la partie inférieure à la moitié de mon écran contient ViewPager me permettant de naviguer entre différents fragments ("partie dynamique de mon IHM")

    Donc, j'ai implémenté une classe dérivant de FragmentActivity, une classe dérivant de PagerAdapter, deux classes dérivant de Fragment.

    Dans ma class MainFragmentActivity j'ai :
    setContentView (R.layout.main);

    Dans mon fichier XML main.xml j'ai :
    - une image qui s'affiche sur la totalité de mon écran (fond d'écran)
    - puis une partie supérieure de l'IHM plusieurs ImageView, Button et TextView.
    - et enfin une partie inférieure de l'IHM le fameux android.support.v4.view.ViewPager

    Dans mes deux fichiers XML (screen_remote_fragment1.xml et screen_remote_fragment2.xml) décrivant mes deux fragments j'ai :
    - plusieurs Button et ImageView.

    L'affichage de mon IHM se passe bien, la navigation des deux écrans via le ViewPager dans la partie inférieure de mon IHM s'effectue correctement.

    Jusqu'ici tout va bien...Mais
    Problème :
    1) Je souhaiterais récupérer le click sur un Button de ma partie supérieure (Button décrit dans main.xml) pour afficher une nouvelle Activity (avec des button, textview...) à la place de mon ViewPager dans la partie inférieure de mon IHM.
    2) Je souhaiterais récupérer le click sur un Button de ma partie inférieure (Button sur le fragment1 par exemple, button décrit dans screen_remote_fragment1.xml) afin de modifier par exemple le TextView de ma partie supérieure de mon IHM (TextView décrit dans main.xml)
    3) Je souhaiterais récupérer le click sur un Button de ma partie inférieure (Button sur le fragment2 par exemple, button décrit dans screen_remote_fragment2.xml) afin d'afficher une nouvelle Activity(composé de plusieurs Button, ImageView...) dans la partie inférieure de mon IHM à la place du ViewPAger.

    Avez vous des suggestions à me faire ?

    En pièce jointe se trouve l'IHM...
    Images attachées Images attachées  

  2. #2
    Membre à l'essai
    Inscrit en
    Septembre 2010
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 21
    Points : 16
    Points
    16
    Par défaut Réponse à la question 2)
    Bonjour à tous,

    Réponse à la question 2) :
    -> dans le fichier screen_remote_fragment1.xml, j'ai implémenté le Button avec le paramètre android:onClick="clickButton"
    -> dans la classe dérivant de FragmenyActivity j'ai implémenté la méthode
    public void clickButton(View v). Je récupère le composant de la partie supérieure de mon IHM par (ImageView)findViewById(R.id.IdIconPuissance). Puis je modifie la src du composant par setImageResource(R.drawable.icon_0).

    Avez vous des réponses pour la question 1) et 3) ?

  3. #3
    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
    Bonjour,


    Réponse à la question 2) :
    -> dans le fichier screen_remote_fragment1.xml, j'ai implémenté le Button avec le paramètre android:onClick="clickButton"
    -> dans la classe dérivant de FragmenyActivity j'ai implémenté la méthode
    public void clickButton(View v). Je récupère le composant de la partie supérieure de mon IHM par (ImageView)findViewById(R.id.IdIconPuissance). Puis je modifie la src du composant par setImageResource(R.drawable.icon_0).

    je pense que la réponse à ta 1) et 3) question devrait ressemble pas mal à la 2).


    En gros attribuer à la propriété onClick de ton button une fonction. Soit par xml comme tu l'as fait soit par code via un SetOnClickListener sur ton button.

    Situ le fais par le fichier xml ben implémenter la fonction dans l'Activity où le bouton appartient. Puis mettre le code adéquat dans cette fonction.

    Enfin garde le même raisonnement que ce que tu as fait que la solution que tu as proposé.
    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.

  4. #4
    Membre à l'essai
    Inscrit en
    Septembre 2010
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 21
    Points : 16
    Points
    16
    Par défaut
    Bonjour,

    Tout d'abord, je te remercie Feanorin pour tes conseils.

    Pour les réponses 1) et 3), j'ai gardé le même raisonnement que la réponse 2).
    J'ai attribué la propriété onClick sur les boutons des deux fragments (screen_remote_fragment1.xml et screen_remote_fragment2).xml. Puis dans la classe dérivant de FragmenyActivity j'ai implémenté les méthodes de chaque onClick.

    J'ai une autre question :
    Peut-on modifier le background d'un button d'un fragment ?
    Je souhaiterais par exemple sur le click d'un button d'un fragment changer son background.

    J'ai essayé dans la méthode de mon button implémentée dans la classe dérivant de FragmenyActivity:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    public void clickButtonFragment (View v)
    {
      buttonFragment.setBackgroundResource(R.drawable.button_fragment_vert);
    }
    Mais ça ne marche pas ! ça fait planter mon application...

    Avez vous des suggestions à me faire ?

  5. #5
    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
    Bonjour,

    Peut-on modifier le background d'un button d'un fragment ?
    Je souhaiterais par exemple sur le click d'un button d'un fragment changer son background.

    J'ai essayé dans la méthode de mon button implémentée dans la classe dérivant de FragmenyActivity:
    Vu le code j'aurais plutôt mis cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public void clickButtonFragment (View v)
    {
      v.setBackgroundResource(R.drawable.button_fragment_vert);
    }
    Après peux tu nous dire l'erreur que tu obtiens dans le logcat ?
    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.

  6. #6
    Membre à l'essai
    Inscrit en
    Septembre 2010
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 21
    Points : 16
    Points
    16
    Par défaut
    Bonjour,

    Merci pour ta réponse Feanorin, lors du clic sur le Button, le changement de background fonctionne très bien !!!
    J'ai mis ne nouvelle discussion sur ce problème dans le forum avec mon projet détaillé.

  7. #7
    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
    J'ai mis ne nouvelle discussion sur ce problème dans le forum avec mon projet détaillé.
    Dans ce cas mets en résolu ce post .
    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.

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

Discussions similaires

  1. Comment ajouter des séries dans des graphes sur des feuilles variables
    Par Molomarcopolo dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 06/07/2012, 16h26
  2. Réponses: 8
    Dernier message: 22/08/2011, 16h56
  3. Implementer des requetes dans des boutons
    Par rabada dans le forum Interfaces Graphiques en Java
    Réponses: 1
    Dernier message: 26/05/2011, 01h10
  4. Insertion des boutons et des images dans une JTable
    Par anouar dans le forum Composants
    Réponses: 2
    Dernier message: 17/11/2005, 20h23
  5. Insérer automatiquement des boutons dans des cellules excel
    Par Oaurelius dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 04/11/2005, 18h38

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