Propriété de Albiri Sigue
customer 27921 at Fri Mar 11 19:19:45 +0100 2011
134 L’art du développement Android
private boolean applyMenuChoice(MenuItem item) {
switch (item.getItemId()) {
case ONE_ID:
getListView().setDividerHeight(1);
return(true);
case EIGHT_ID:
getListView().setDividerHeight(8);
return(true);
case SIXTEEN_ID:
getListView().setDividerHeight(16);
return(true);
case TWENTY_FOUR_ID:
getListView().setDividerHeight(24);
return(true);
case TWO_ID:
getListView().setDividerHeight(2);
return(true);
case THIRTY_TWO_ID:
getListView().setDividerHeight(32);
return(true);
case FORTY_ID:
getListView().setDividerHeight(40);
return(true);
}
return(false);
}
}
Dans onCreate(), nous précisons que le widget liste dispose d’un menu contextuel que
nous remplissons à l’aide de notre méthode privée populateMenu() par l’intermédiaire
d’onCreateContextMenu(). Nous implémentons également la méthode de rappel onCreateOptionsMenu() pour signaler que notre activité dispose également d’un menu d’options
rempli, lui aussi, grâce à populateMenu().
Nos implémentations d’onOptionsItemSelected() (pour les choix dans le menu d’options)
et d’onContextItemSelected() (pour les choix dans le menu contextuel) délèguent
toutes les deux leur traitement à une méthode applyMenuChoice() et appellent leur superclasse respective si l’utilisateur n’a sélectionné aucun choix du menu.
populateMenu() ajoute sept choix de menus, chacun ayant un identifiant unique. Comme
nous sommes paresseux, nous n’utiliserons pas d’icône.
Livre Android.book Page 134 Dimanche, 8. novembre 2009 12:23 12
Précédent

- 149/391

Suivant