Dans cette étape 19, je vais sur l’action “génération aléatoirement de planning” proposer 4 choix :
Semaine en cours
Semaine prochaine
Mois en cours
Choisissez vos dates.
Pour cela je vais rajouter un sous-menu à mon menu génération planning, je reprends ma classe principale et je modifie le menu principal dans ma méthode onCreateOptionsMenu ce qui donne :
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
//inflater.inflate(R.menu.options_menu, menu);
boolean result = super.onCreateOptionsMenu(menu);
int i=0;
//inflater.inflate(R.menu.menurepas, menu);
SubMenu fileMenu = menu.addSubMenu(0,1,i,"Plat du jour");i++;
SubMenu editMenu = menu.addSubMenu(0,2,i,"Enreg Recette");i++;
SubMenu genplannMenu = menu.addSubMenu(0,6,i,"Gen planning");i++;
SubMenu listeCouseMenu = menu.addSubMenu(0,3,i,"Liste courses");i++;
SubMenu voirPlanningMenu = menu.addSubMenu(0,7,i,"Voir planning");i++;
SubMenu rechecheMenu = menu.addSubMenu(0,4,i,"Rechercher");i++;
SubMenu settingMenu = menu.addSubMenu(0,5,i,"setting");i++;
//création du sou menu
genplannMenu.add(1,21,1,"Semaine en cour");
genplannMenu.add(1,22,2,"Semaine prochaine");
genplannMenu.add(1,23,2,"Mois entier");
genplannMenu.add(1,24,2,"Choississez vos dates");
objBd = new BDAcces(this);
return true;
}
je modifie également ma méthode onOptionsItemSelected pour appeler ma classe qui gère la génération de planning (GenerationPlanning.java), je passe à cette classe une variable stypeplanning, les valeurs de cette variable
1=>génération semaine en cours
2=>génération semaine prochaine
3=>Le mois en cours
4=>Date au choix
pour transmette ces valeurs je vais utiliser la classe Bundle du tuto Passer des variables entre Activity sous android
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
//***************ouverture enregistrement recette***************
case 2:
Intent defineIntent = new Intent(this,EnregRecette.class);
this.startActivity(defineIntent);
return true;
case 5:
Intent defineIntent5 = new Intent(this,Setting.class);
this.startActivity(defineIntent5);
return true;
case 4:
Intent defineIntent4 = new Intent(this,RechercherRecette.class);
this.startActivity(defineIntent4);
return true;
//appeler au sous menu semaine en cours
case 21:
Intent defineIntent21 = new Intent(this,GenerationPlanning.class);
Bundle objetbunble21 = new Bundle();
objetbunble21.putString("stypeplanning","1");
defineIntent21.putExtras(objetbunble21);
this.startActivity(defineIntent21);
return true;
//appeler au sous menu semaine prochaine
case 22:
Intent defineIntent22 = new Intent(this,GenerationPlanning.class);
Bundle objetbunble22 = new Bundle();
objetbunble22.putString("stypeplanning","2");
defineIntent22.putExtras(objetbunble22);
this.startActivity(defineIntent22);
return true;
//appel sous menu mois en cours
case 23:
Intent defineIntent23 = new Intent(this,GenerationPlanning.class);
Bundle objetbunble23 = new Bundle();
objetbunble23.putString("stypeplanning","3");
defineIntent23.putExtras(objetbunble23);
this.startActivity(defineIntent23);
return true;
//appel au sous menu choix des dates
case 24:
Intent defineIntent24 = new Intent(this,GenerationPlanning.class);
Bundle objetbunble24 = new Bundle();
objetbunble24.putString("stypeplanning","4");
defineIntent24.putExtras(objetbunble24);
this.startActivity(defineIntent24);
return true;
}
return false;
}
}
Il est temps de mettre à profit les tutoriels d’Android France:
Passez à la vitesse supérieure et investissez quelques dizaines d’euros pour acquérir les connaissances qui vous feront gagner de l’argent avec vos applications rendez-vous sur notre boutique Android-france pour ces formations en vidéo