Créer un layout une fois utilisable sur toutes les pages

Signaler
Messages postés
6
Date d'inscription
samedi 27 avril 2019
Statut
Membre
Dernière intervention
16 novembre 2019
-
 amine448 -
Bonjour.
Je suis entrain de faire une petite appli android. En haut de toutes mes pages, j’ai un navbar qui contient trois liens (acceuil, connexion, panier).

J’ai créé un layout à part qui contient mon navbar, puis j’ai inflaté ce layout dans toutes mes views (avec layoutInflate)

Le problème est que les liens ne marche pas sur toutes les pages, car j’ai lancé mes intent à partir de la page d’accueil.

Que faire pour que mes liens soit utilisable dans toutes les autres pages sans avoir à créer des intents dans toutes mes pages ?

Merci !

5 réponses

Messages postés
14685
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
12 décembre 2019
1349
Bonjour,

Il faut utiliser la programme objet ;)
Soit tu crée un composant spécifique NavBar autonome, avec les bons liens qui vont bien, soit tu fais tout pointer vers ta page d'accueil (MainActivity ?)
Merci. Oui j’avais créer un layout pour le navbar que j’ai associé au MainActivity.

Et un switch case pour modifier le corps de la page en fonction du clic de l’utilisateur sur le navbar. Mais je ne sais toujours pas comment modifier le corps de la page. Sachant que j’ai créer des layout à part qui devrait remplacer le body de la page à chaque clic.

public class click implements View.onclickListener{
       
      @override
       public void onClick(View v){
              switch (v.getId()){
                     case R.id.tv_inscription:
                            break;
              }
        }
}


Pouvez-vous m’aider svp ? Est-ce qu’il existe une méthode qui permet de remplacer une portion d’une page par un layout svp ?
J’ai essayé d’inflater et modifier avec addView mais ça fonctionne pas.

Merci d’avance de vos réponses !
Messages postés
14685
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
12 décembre 2019
1349
J’ai créé un layout à part qui contient mon navbar, puis j’ai inflaté ce layout dans toutes mes views (avec layoutInflate)
Quand tu parles de vues, tu parles de Fragment ou d'Activity ? Si oui, il est possible de faire ce que tu veux à l'aide d'un listener (ou callback)
Bonjour. En parlant de vue je faisais allusion au fichier xml.
Merci ! J’avais jamais entendu parler du fragment , je vais étudier ça et l’appliquer à mon code.
Merci beaucoup !