• No products in the cart.

  • LOGIN

Modifier le menu

Modifier le menu d’une application Android

Dans notre application, un menu existe déjà. C’est dû au fait que nous avons choisi un layout contenant de base un menu lors de la création de notre projet. Nous allons donc ici apprendre à modifier le menu, de façon à ce qu’il ouvre nos autres activity.

Modification : menu-main.xml

Première étape : rendez-vous dans le fichier « menu-main.xml ».

Deuxième étape : mettez-vous en mode texte de façon à avoir accès au XML

Troisième étape : Copiez les 4 lignes portant le nom « <item android :id… > » et copiez-les à nouveau juste en dessous. Vous devriez obtenir quelque chose de ce genre :

modifier le menu

Modifiez le champ « id » et « title » par un nom de votre choix, ce nom devra être déclaré par la suite dans le fichier « strings.xml » du dossier « /res/values »

Modification : strings.xml

Première étape : rendez-vous dans le fichier « strings.xml » du dossier « strings » contenu dans « res ».

Deuxième étape : Copiez la ligne :

<string name="action_settings">Settings</string>

Et collez la juste en dessous, avec le nom que vous avez choisi précédemment :

<string name="action_EuroVersDollar">Euro Vers Dollar</string>

Maintenant que les modifications dans les fichiers xml ont étés effectués, il faut modifier notre code java du menu de façon à ce qu’il ouvre notre nouvelle activity lorsque l’on clique sur « Euro vers Dollar ».

Pour cela, ouvrez le fichier « MainActivity » contenu dans le dossier Java puis dans le premier dossier.

À l’intérieur de celui-ci, vous devriez avoir une fonction :

@Override public boolean onOptionsItemSelected(MenuItem item) { 
    ... 
}

Supprimez alors tout ce qui est entre les accolades et remplacez le code par :

@Override public boolean onOptionsItemSelected(MenuItem item) { 
    switch (item.getItemId()) { 
        case R.id.action_EuroVersDollar: 
            Intent EuroVersDollar = new Intent(this, EuroVersDollar.class); // Instanciation de la première Activity 
            this.startActivity(EuroVersDollar); // Démarrage de l'instanciation 
            finish(); // Terminer l'Activity précédente de façon à ce que le bouton Quitter ferme tout 
            return true; 
    } 

    return false; 
}

Remplacez ici les occurrences de « EuroVersDollar » par le nom que vous avez choisi précédemment. Ensuite, il est très probable que « Intent » soit souligné en rouge, c’est normal : la classe n’a pas encore été importée. Pour l’importer, cliquez sur « Intent » puis appuyez sur ALT+Entrer, la classe sera alors importée ou cela vous sera proposé en premier choix.

Maintenant, l’heure du test a sonné ! Lancez votre application et cliquez sur le menu pour ouvrir votre nouvelle activity, voici le résultat attendu :

android-15

Notre fenêtre s’ouvre bien comme prévu !

Seulement c’est un petit peu vide… alors passez à la partie suivante !

 

 

 

 

 

 

SEE ALL Add a note
YOU
Add your Comment
Culte du code | 2015-2022  (Vecteurs par Freepik, Parallax par fullvector)