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 :

Affichage icônes menu


Sujet :

Composants graphiques Android

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur du Dimanche
    Inscrit en
    Juillet 2014
    Messages
    147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur du Dimanche
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2014
    Messages : 147
    Points : 70
    Points
    70
    Par défaut Affichage icônes menu
    Bonsoir à tous,

    Je suis un tutoriel pour créer une application de DVD.

    Le souci est que les icônes que j'ai collés dans le répertoire drawable-ldpi (png) ne s'affichent pas dans le menu de mon téléphone.

    D'autre part je ne peux visionner le sous-menu.

    MainActivity.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
    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
    package com.example.locdvd;
     
    import android.app.Activity;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.Menu;
    import android.view.MenuItem;
     
    public class MainActivity extends Activity {
     
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
        }
        @Override
     
        public boolean onCreateOptionsMenu(Menu menu) {
     
     
     
     
            super.onCreateOptionsMenu (menu);
            MenuItem item = menu.add("Recherchez un Film");
            item.setIcon(R.drawable.facebook);
            item = menu.add("Réservez un DVD");
            item.setIcon(R.drawable.facebook);
            item = menu.add("Magasins");
            item.setIcon(R.drawable.facebook);
            item = menu.add("Présentation");
            item.setIcon(R.drawable.facebook);
            return true;
        }
     
     
        @Override
     
        public boolean onOptionsItemSelected(MenuItem item) {
     
     
     
            // Handle action bar item clicks here. The action bar will
            // automatically handle clicks on the Home/Up button, so long
            // as you specify a parent activity in AndroidManifest.xml.
            if (item.hasSubMenu() == false){
            if (item.getTitle() == "Recherchez un Film"){
              Log.i("ENI", "Recherchez un Film");
            }
            if (item.getTitle() == "Réservez un DVD"){
                  Log.i("ENI", "Réservez un DVD");
                }
            if (item.getTitle() == "Magasins"){
                  Log.i("ENI", "Magasins");
                }
            if (item.getTitle() == "Présentation"){
                  Log.i("ENI", "Présentation");
                }
     
            }
            return true;
        }
    }
    J'ai comme erreur
    "sendUserActionEvent() mView == null" TAG: ViewRootImp1
    Quelqu'un saurait-il m'indiquer comment résoudre ce problème ?

    Merci pour vos réponses.
    -"Mais ici on attend pas jusqu'au Dimanche ?"

  2. #2
    Membre averti
    Homme Profil pro
    Lycéen
    Inscrit en
    Décembre 2014
    Messages
    106
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Décembre 2014
    Messages : 106
    Points : 322
    Points
    322
    Par défaut
    Essaie de mettre tes images dans drawable tout court, si tu n'as pas un écran très petite taille c'est normal que android ne trouve pas tes images.
    drawable-ldpi est quasiment inutile, il me semble d'ailleurs qu'il est déprécié

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur du Dimanche
    Inscrit en
    Juillet 2014
    Messages
    147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur du Dimanche
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2014
    Messages : 147
    Points : 70
    Points
    70
    Par défaut
    Salut et merci,

    c'est fait mais ça ne marche toujours pas.
    -"Mais ici on attend pas jusqu'au Dimanche ?"

  4. #4
    Membre averti
    Homme Profil pro
    Lycéen
    Inscrit en
    Décembre 2014
    Messages
    106
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Décembre 2014
    Messages : 106
    Points : 322
    Points
    322
    Par défaut
    C'est etrange j'ai copié collé ton code il marche parfaitement
    Met ton image en piece jointe que je teste avec.

  5. #5
    Membre régulier
    Homme Profil pro
    Développeur du Dimanche
    Inscrit en
    Juillet 2014
    Messages
    147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur du Dimanche
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2014
    Messages : 147
    Points : 70
    Points
    70
    Par défaut
    Bonjour,

    Tu trouveras la pièce jointe réalisée sous gimp.
    Cordialement.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
            item = menu.add("Magasins");
            item.setIcon(R.drawable.magasins);
     
        }
    Images attachées Images attachées  
    -"Mais ici on attend pas jusqu'au Dimanche ?"

  6. #6
    Membre averti
    Homme Profil pro
    Lycéen
    Inscrit en
    Décembre 2014
    Messages
    106
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Décembre 2014
    Messages : 106
    Points : 322
    Points
    322
    Par défaut
    J'ai compris, cette méthode marche sur gingerbread mais pas sur kitkat:
    gingerbread:
    Nom : SC20150313-112542.png
Affichages : 101
Taille : 13,7 Ko
    kitkat:
    Nom : Screenshot_2015-03-13-11-37-38.png
Affichages : 102
Taille : 28,0 Ko
    Renseigne toi pour trouver une méthode plus à jour.

  7. #7
    Membre régulier
    Homme Profil pro
    Développeur du Dimanche
    Inscrit en
    Juillet 2014
    Messages
    147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur du Dimanche
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2014
    Messages : 147
    Points : 70
    Points
    70
    Par défaut
    Salut.
    Merci beaucoup pour ces infos,

    J'ai la version 4.2.2: Jelly Bean.
    Je vais me renseigner.
    Cordialement.
    -"Mais ici on attend pas jusqu'au Dimanche ?"

  8. #8
    Membre régulier
    Homme Profil pro
    Développeur du Dimanche
    Inscrit en
    Juillet 2014
    Messages
    147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur du Dimanche
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2014
    Messages : 147
    Points : 70
    Points
    70
    Par défaut
    Bonjour,

    En parcourant le forum developpez.com j'ai trouver une discussion où l'on pouvait supprimer les autres dossiers values-xxx et laisser que le dossier "values" et du coup celà m'affichait les images de mon menu mais pas les items de mon sous-menu du coup j'ai suivi le tutoriel création menu sous menu sur developpez.com et j'ai modifié le code voici ce que ça donne.

    menu.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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    <?xml version="1.0" encoding="utf-8"?>
     
    <menu xmlns:android="http://schemas.android.com/apk/res/android">
     <item android:id="@+id/recherche" 
          android:title="Recherchez un Film"
          android:icon="@drawable/recherche"></item>
     <item android:id="@+id/magasins" 
               android:title="Magasins"
          android:icon="@drawable/magasins"></item>
    <item android:id="@+id/presentation" 
          android:title="Présentation"
          android:icon="@drawable/presentation">
     
         <menu android:id="@+id/sousmenu">
    	 <item android:id="@+id/contact"
    	       android:title="Contact"   />	
     
    	 <item android:id="@+id/equipe"
    	       android:title="L'équipe"  />
    	 <item android:id="@+id/croissance"
    	       android:title="Croissance"  />
         </menu>
    </item>
     
    <item android:id="@+id/quitter" 
         android:title="Quitter"
         android:icon="@drawable/reservez" />
    </menu>
    MainActivity.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
    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
    package com.example.menu;
     
     import android.app.Activity;
    import android.os.Bundle;
    import android.view.Menu;
    import android.view.MenuInflater;
    import android.view.MenuItem;
    import android.widget.Toast;
     
    public class MainActivity extends Activity {
     
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main); 
     
        }
     
        //Méthode qui se déclenchera lorsque vous appuierez sur le bouton menu du téléphone
        public boolean onCreateOptionsMenu(Menu menu) {
     
            //Création d'un MenuInflater qui va permettre d'instancier un Menu XML en un objet Menu
            MenuInflater inflater = getMenuInflater();
            //Instanciation du menu XML spécifier en un objet Menu
            inflater.inflate(R.layout.menu, menu);
     
            //Il n'est pas possible de modifier l'icône d'en-tête du sous menu via le fichier XML on le fait donc en JAVA
        	menu.getItem(2).getSubMenu().setHeaderIcon(R.drawable.ic_launcher);
     
            return true;
         }
     
           //Méthode qui se déclenchera au clic sur un item
          public boolean onOptionsItemSelected(MenuItem item) {
             //On regarde quel item a été cliqué grâce à son id et on déclenche une action
             switch (item.getItemId()) {
     
             case R.id.recherche:
                 Toast.makeText(MainActivity.this, "Recherche", Toast.LENGTH_SHORT);
                 return true; 
             case R.id.magasins:
                 Toast.makeText(MainActivity.this, "Magasins", Toast.LENGTH_SHORT);
                 return true;    
             case R.id.presentation:
                   Toast.makeText(MainActivity.this, "Présentation", Toast.LENGTH_SHORT);
                   return true;
     
                case R.id.contact:
                    Toast.makeText(MainActivity.this, "Contact", Toast.LENGTH_SHORT).show();
                    return true;
                case R.id.equipe:
                    Toast.makeText(MainActivity.this, "L'Equipe", Toast.LENGTH_SHORT).show();
                    return true;
                case R.id.croissance:
                    Toast.makeText(MainActivity.this, "Croissance", Toast.LENGTH_SHORT).show();
                    return true;   
               case R.id.quitter:
                   //Pour fermer l'application il suffit de faire finish()
                   finish();
                   return true;
             }
             return false;}
     
    }
    -"Mais ici on attend pas jusqu'au Dimanche ?"

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

Discussions similaires

  1. Affichage de menu dans un div
    Par cell dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 21/07/2006, 09h21
  2. [CSS] Pb d'affichage de menu
    Par frog43 dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 25/03/2006, 16h52
  3. [MySQL] Affichage du menu en boucle après requête effectuer
    Par leloup84 dans le forum PHP & Base de données
    Réponses: 14
    Dernier message: 08/02/2006, 14h44
  4. [Debutant]Affichage de menu
    Par Beleim dans le forum Windows
    Réponses: 5
    Dernier message: 19/07/2005, 11h26

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