SlideShare uma empresa Scribd logo
1 de 11
Développer sur Android
Android Lab Test
www.AndroidLabTest.com
Facebook
Par Bruno Delb
www.youtube.com/androidlabtest
www.twitter.com/brunodelb | www.facebook.com/brunodelb | blog.brunodelb.com
www.facebook.com/Androidlabtest
Youtube
Siteofficiel
Leçon : Le menu contextuel
Le menu contextuel
• Dans cette leçon, vous allez apprendre à
ajouter un menu contextuel à une vue.
• Pour cela, vous allez utiliser les méthodes
relatives au ContextMenu.
Le menu contextuel
• Tout d’abord, le menu contextuel doit être rattaché à un objet,
comme à un bouton :
registerForContextMenu(btnMenu);
Le menu contextuel
• La création du menu contextuel doit se faire dans la
méthode onCreateContextMenu().
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenu.ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
getMenuInflater().inflate(R.menu.contextmenu, menu);
menu.setHeaderTitle("Choose an option");
}
Le menu contextuel
• A chaque sélection d’une option du menu contextuel, la
méthode onContextItemSelected() est appelée avec en
paramètre l’élément sélectionné (MenuItem).
public boolean onContextItemSelected(MenuItem item) {
switch(item.getItemId()) {
case R.id.option1: return true;
case R.id.option2: return true;
case R.id.option3: return true;
}
return super.onContextItemSelected(item);
}
Layout main.xml
<?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">
<Button
android:id="@+id/btnMenu"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Menu" />
</LinearLayout>
Menu resmenucontextmenu.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/option1"
android:title="Option 1" />
<item
android:id="@+id/option2"
android:title="Option 2" />
<item
android:id="@+id/option3"
android:title="Option 3" />
</menu>
Fichier Main.java
public class Main extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button btnMenu = (Button)findViewById (R.id.btnMenu);
btnMenu.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
openContextMenu(v);
}
});
registerForContextMenu(btnMenu);
}
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo
menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
getMenuInflater().inflate(R.menu.contextmenu, menu);
menu.setHeaderTitle("Choose an option");
}
Fichier Main.java
public boolean onContextItemSelected(MenuItem item) {
switch(item.getItemId()) {
case R.id.option1:
Toast.makeText(this,"Option 1",1000).show();
return true;
case R.id.option2:
Toast.makeText(this,"Option 2",1000).show();
return true;
case R.id.option3:
Toast.makeText(this,"Option 3",1000).show();
return true;
}
return super.onContextItemSelected(item);
}
}
Testez sur votre mobile
View_Menu_Context
Retrouvez-moi sur ma chaîne AndroidLabTest …
Sur ma chaîne Youtube
https://www.youtube.com/user/mobiledevlabtest
Qui suis-je ?
Bruno Delb,
auteur du 1er livre francophone de développement d’application Java sur mobile (2002),
développeur d’applications mobiles & sociales,
parlez-moi de vos projets.
Et bien sûr sur mon site Web :
http://blog.brunodelb.com

Mais conteúdo relacionado

Destaque

Stratégie de brand content
Stratégie de brand contentStratégie de brand content
Stratégie de brand content
Wearethewords
 
Clases de palabras de los rijj
Clases de palabras de los rijjClases de palabras de los rijj
Clases de palabras de los rijj
JOSÉ TOMÁS
 
Csim c1 2013 questions générations un.2
Csim c1 2013 questions générations un.2Csim c1 2013 questions générations un.2
Csim c1 2013 questions générations un.2
samanthablancher
 
Edward deming
Edward demingEdward deming
Edward deming
Ross Chan
 
Engager ses clients sur Facebook
Engager ses clients sur Facebook Engager ses clients sur Facebook
Engager ses clients sur Facebook
ALTER WAY
 
Los animales
Los animalesLos animales
Los animales
rbt13
 
Miguel ángel sánchez y fernando terrones
Miguel ángel sánchez y fernando terronesMiguel ángel sánchez y fernando terrones
Miguel ángel sánchez y fernando terrones
JOSÉ TOMÁS
 
synthese_survey_hotspot_lome
synthese_survey_hotspot_lomesynthese_survey_hotspot_lome
synthese_survey_hotspot_lome
Gérard Sekko
 
Las XXIV jornadas catalanas de Derecho Social. Estudio de la reforma laboral ...
Las XXIV jornadas catalanas de Derecho Social. Estudio de la reforma laboral ...Las XXIV jornadas catalanas de Derecho Social. Estudio de la reforma laboral ...
Las XXIV jornadas catalanas de Derecho Social. Estudio de la reforma laboral ...
Universidad Autónoma de Barcelona
 

Destaque (20)

Charlie vaincra
Charlie vaincraCharlie vaincra
Charlie vaincra
 
Stratégie de brand content
Stratégie de brand contentStratégie de brand content
Stratégie de brand content
 
Tableau cd p_m2_2012
Tableau cd p_m2_2012Tableau cd p_m2_2012
Tableau cd p_m2_2012
 
Formateurs et réseaux sociaux 3.11.12
Formateurs et réseaux sociaux 3.11.12Formateurs et réseaux sociaux 3.11.12
Formateurs et réseaux sociaux 3.11.12
 
Panorama del Costeo de la Violencia contra las Mujeres y las Niñas en Asia Pa...
Panorama del Costeo de la Violencia contra las Mujeres y las Niñas en Asia Pa...Panorama del Costeo de la Violencia contra las Mujeres y las Niñas en Asia Pa...
Panorama del Costeo de la Violencia contra las Mujeres y las Niñas en Asia Pa...
 
Clases de palabras de los rijj
Clases de palabras de los rijjClases de palabras de los rijj
Clases de palabras de los rijj
 
Ce que le jeu vidéo peut amener au web.
Ce que le jeu vidéo peut amener au web.Ce que le jeu vidéo peut amener au web.
Ce que le jeu vidéo peut amener au web.
 
Csim c1 2013 questions générations un.2
Csim c1 2013 questions générations un.2Csim c1 2013 questions générations un.2
Csim c1 2013 questions générations un.2
 
Edward deming
Edward demingEdward deming
Edward deming
 
Android Lab Test : Le menu dynamique (français)
Android Lab Test : Le menu dynamique (français)Android Lab Test : Le menu dynamique (français)
Android Lab Test : Le menu dynamique (français)
 
Apprendre en jouant : un semestre de TD en Géosciences à l'Université
Apprendre en jouant : un semestre de TD en Géosciences à l'UniversitéApprendre en jouant : un semestre de TD en Géosciences à l'Université
Apprendre en jouant : un semestre de TD en Géosciences à l'Université
 
Oferta academica power director
Oferta academica power directorOferta academica power director
Oferta academica power director
 
Engager ses clients sur Facebook
Engager ses clients sur Facebook Engager ses clients sur Facebook
Engager ses clients sur Facebook
 
Los animales
Los animalesLos animales
Los animales
 
Webinaire - Adaptez votre contenu au mobile
Webinaire - Adaptez votre contenu au mobileWebinaire - Adaptez votre contenu au mobile
Webinaire - Adaptez votre contenu au mobile
 
Miguel ángel sánchez y fernando terrones
Miguel ángel sánchez y fernando terronesMiguel ángel sánchez y fernando terrones
Miguel ángel sánchez y fernando terrones
 
synthese_survey_hotspot_lome
synthese_survey_hotspot_lomesynthese_survey_hotspot_lome
synthese_survey_hotspot_lome
 
Las XXIV jornadas catalanas de Derecho Social. Estudio de la reforma laboral ...
Las XXIV jornadas catalanas de Derecho Social. Estudio de la reforma laboral ...Las XXIV jornadas catalanas de Derecho Social. Estudio de la reforma laboral ...
Las XXIV jornadas catalanas de Derecho Social. Estudio de la reforma laboral ...
 
RESUMEN TERCER PERIODO
RESUMEN TERCER PERIODORESUMEN TERCER PERIODO
RESUMEN TERCER PERIODO
 
Démarches en ligne et échanges avec les administrations, les collectivités et...
Démarches en ligne et échanges avec les administrations, les collectivités et...Démarches en ligne et échanges avec les administrations, les collectivités et...
Démarches en ligne et échanges avec les administrations, les collectivités et...
 

Mais de Bruno Delb

Mais de Bruno Delb (20)

Introduction to Swift (tutorial)
Introduction to Swift (tutorial)Introduction to Swift (tutorial)
Introduction to Swift (tutorial)
 
Android Lab Test : Storage of data with SharedPreferences (english)
Android Lab Test : Storage of data with SharedPreferences (english)Android Lab Test : Storage of data with SharedPreferences (english)
Android Lab Test : Storage of data with SharedPreferences (english)
 
Android Lab Test : Using the sensor gyroscope (english)
Android Lab Test : Using the sensor gyroscope (english)Android Lab Test : Using the sensor gyroscope (english)
Android Lab Test : Using the sensor gyroscope (english)
 
Android Lab Test : Using the network with HTTP (english)
Android Lab Test : Using the network with HTTP (english)Android Lab Test : Using the network with HTTP (english)
Android Lab Test : Using the network with HTTP (english)
 
Android Lab Test : Managing sounds with SoundPool (english)
Android Lab Test : Managing sounds with SoundPool (english)Android Lab Test : Managing sounds with SoundPool (english)
Android Lab Test : Managing sounds with SoundPool (english)
 
Android Lab Test : Using the text-to-speech (english)
Android Lab Test : Using the text-to-speech (english)Android Lab Test : Using the text-to-speech (english)
Android Lab Test : Using the text-to-speech (english)
 
Android Lab Test : Reading the foot file list (english)
Android Lab Test : Reading the foot file list (english)Android Lab Test : Reading the foot file list (english)
Android Lab Test : Reading the foot file list (english)
 
Android Lab Test : Creating a menu dynamically (english)
Android Lab Test : Creating a menu dynamically (english)Android Lab Test : Creating a menu dynamically (english)
Android Lab Test : Creating a menu dynamically (english)
 
Android Lab Test : Creating a dialog Yes/No (english)
Android Lab Test : Creating a dialog Yes/No (english)Android Lab Test : Creating a dialog Yes/No (english)
Android Lab Test : Creating a dialog Yes/No (english)
 
Android Lab Test : The styles of views (english)
Android Lab Test : The styles of views (english)Android Lab Test : The styles of views (english)
Android Lab Test : The styles of views (english)
 
Android Lab Test : Creating a menu context (english)
Android Lab Test : Creating a menu context (english)Android Lab Test : Creating a menu context (english)
Android Lab Test : Creating a menu context (english)
 
Android Lab Test : Using the camera preview (english)
Android Lab Test : Using the camera preview (english)Android Lab Test : Using the camera preview (english)
Android Lab Test : Using the camera preview (english)
 
Android Lab Test : The views, the Gallery (english)
Android Lab Test : The views, the Gallery (english)Android Lab Test : The views, the Gallery (english)
Android Lab Test : The views, the Gallery (english)
 
Android Lab Test : Using the WIFI (english)
Android Lab Test : Using the WIFI (english)Android Lab Test : Using the WIFI (english)
Android Lab Test : Using the WIFI (english)
 
Android Lab Test : Managing the telephone calls (english)
Android Lab Test : Managing the telephone calls (english)Android Lab Test : Managing the telephone calls (english)
Android Lab Test : Managing the telephone calls (english)
 
Android Lab Test : Reading the SMS-inbox (english)
Android Lab Test : Reading the SMS-inbox (english)Android Lab Test : Reading the SMS-inbox (english)
Android Lab Test : Reading the SMS-inbox (english)
 
Android Lab Test : Installation of application in Java (english)
Android Lab Test : Installation of application in Java (english)Android Lab Test : Installation of application in Java (english)
Android Lab Test : Installation of application in Java (english)
 
Android Lab Test : Ecrire un texte sur le canevas (français)
Android Lab Test : Ecrire un texte sur le canevas (français)Android Lab Test : Ecrire un texte sur le canevas (français)
Android Lab Test : Ecrire un texte sur le canevas (français)
 
Android Lab Test : La connectivité réseau avec HTTP (français)
Android Lab Test : La connectivité réseau avec HTTP (français)Android Lab Test : La connectivité réseau avec HTTP (français)
Android Lab Test : La connectivité réseau avec HTTP (français)
 
Android Lab Test : Le capteur gyroscope (français)
Android Lab Test : Le capteur gyroscope (français)Android Lab Test : Le capteur gyroscope (français)
Android Lab Test : Le capteur gyroscope (français)
 

Último

Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdf
AmgdoulHatim
 
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
ikospam0
 
Cours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdfCours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdf
ssuserc72852
 

Último (20)

Computer Parts in French - Les parties de l'ordinateur.pptx
Computer Parts in French - Les parties de l'ordinateur.pptxComputer Parts in French - Les parties de l'ordinateur.pptx
Computer Parts in French - Les parties de l'ordinateur.pptx
 
Sidonie au Japon . pptx Un film français
Sidonie    au   Japon  .  pptx  Un film françaisSidonie    au   Japon  .  pptx  Un film français
Sidonie au Japon . pptx Un film français
 
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANKRAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
 
La mondialisation avantages et inconvénients
La mondialisation avantages et inconvénientsLa mondialisation avantages et inconvénients
La mondialisation avantages et inconvénients
 
Cours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdfCours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdf
 
L application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptxL application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptx
 
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projetFormation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
 
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
 
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
 
La nouvelle femme . pptx Film français
La   nouvelle   femme  . pptx  Film françaisLa   nouvelle   femme  . pptx  Film français
La nouvelle femme . pptx Film français
 
Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdf
 
Chapitre 2 du cours de JavaScript. Bon Cours
Chapitre 2 du cours de JavaScript. Bon CoursChapitre 2 du cours de JavaScript. Bon Cours
Chapitre 2 du cours de JavaScript. Bon Cours
 
Formation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptxFormation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptx
 
Boléro. pptx Film français réalisé par une femme.
Boléro.  pptx   Film   français   réalisé  par une  femme.Boléro.  pptx   Film   français   réalisé  par une  femme.
Boléro. pptx Film français réalisé par une femme.
 
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
 
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptxIntégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
 
L'expression du but : fiche et exercices niveau C1 FLE
L'expression du but : fiche et exercices  niveau C1 FLEL'expression du but : fiche et exercices  niveau C1 FLE
L'expression du but : fiche et exercices niveau C1 FLE
 
les_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhkles_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhk
 
Cours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdfCours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdf
 
Les roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptxLes roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptx
 

Android Lab Test : Le menu contextuel (français)

  • 1. Développer sur Android Android Lab Test www.AndroidLabTest.com Facebook Par Bruno Delb www.youtube.com/androidlabtest www.twitter.com/brunodelb | www.facebook.com/brunodelb | blog.brunodelb.com www.facebook.com/Androidlabtest Youtube Siteofficiel Leçon : Le menu contextuel
  • 2. Le menu contextuel • Dans cette leçon, vous allez apprendre à ajouter un menu contextuel à une vue. • Pour cela, vous allez utiliser les méthodes relatives au ContextMenu.
  • 3. Le menu contextuel • Tout d’abord, le menu contextuel doit être rattaché à un objet, comme à un bouton : registerForContextMenu(btnMenu);
  • 4. Le menu contextuel • La création du menu contextuel doit se faire dans la méthode onCreateContextMenu(). public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) { super.onCreateContextMenu(menu, v, menuInfo); getMenuInflater().inflate(R.menu.contextmenu, menu); menu.setHeaderTitle("Choose an option"); }
  • 5. Le menu contextuel • A chaque sélection d’une option du menu contextuel, la méthode onContextItemSelected() est appelée avec en paramètre l’élément sélectionné (MenuItem). public boolean onContextItemSelected(MenuItem item) { switch(item.getItemId()) { case R.id.option1: return true; case R.id.option2: return true; case R.id.option3: return true; } return super.onContextItemSelected(item); }
  • 6. Layout main.xml <?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"> <Button android:id="@+id/btnMenu" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Menu" /> </LinearLayout>
  • 7. Menu resmenucontextmenu.xml <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/option1" android:title="Option 1" /> <item android:id="@+id/option2" android:title="Option 2" /> <item android:id="@+id/option3" android:title="Option 3" /> </menu>
  • 8. Fichier Main.java public class Main extends Activity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button btnMenu = (Button)findViewById (R.id.btnMenu); btnMenu.setOnClickListener(new OnClickListener() { public void onClick(View v) { openContextMenu(v); } }); registerForContextMenu(btnMenu); } public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) { super.onCreateContextMenu(menu, v, menuInfo); getMenuInflater().inflate(R.menu.contextmenu, menu); menu.setHeaderTitle("Choose an option"); }
  • 9. Fichier Main.java public boolean onContextItemSelected(MenuItem item) { switch(item.getItemId()) { case R.id.option1: Toast.makeText(this,"Option 1",1000).show(); return true; case R.id.option2: Toast.makeText(this,"Option 2",1000).show(); return true; case R.id.option3: Toast.makeText(this,"Option 3",1000).show(); return true; } return super.onContextItemSelected(item); } }
  • 10. Testez sur votre mobile View_Menu_Context
  • 11. Retrouvez-moi sur ma chaîne AndroidLabTest … Sur ma chaîne Youtube https://www.youtube.com/user/mobiledevlabtest Qui suis-je ? Bruno Delb, auteur du 1er livre francophone de développement d’application Java sur mobile (2002), développeur d’applications mobiles & sociales, parlez-moi de vos projets. Et bien sûr sur mon site Web : http://blog.brunodelb.com