J'ai un menu d'options sur mon Activity
avec un MenuItem
"Démarrer". Lorsque ce MenuItem
est sélectionné, je voudrais modifier le menu pour qu'il contienne un MenuItem
"Stop". Et enfin, lorsque "Stop" est sélectionné, je voudrais revenir à "Start".
Voici des parties de mon code qui ne fonctionnent pas. J'ai "Start" et "Stop" répertoriés dans mymenu.xml
Je devrais probablement supprimer "stop" lorsque le menu est créé:
public class MyActivity extends Activity {
private boolean isStarted = false;
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
menu.removeItem(R.id.stop);
inflater.inflate(R.menu.mymenu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.start:
isStarted = true;
return true;
case R.id.stop:
isStarted = false;
return true;
default:
return super.onOptionsItemSelected(item);
}
}
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
if(isStarted) {
menu.removeItem(R.id.start);
menu.add(R.id.stop);
} else {
menu.removeItem(R.id.stop);
menu.add(R.id.start);
}
return true;
}
}