У меня есть меню параметров на моем Activity
с MenuItem
«Пуск». Когда выбран этот MenuItem
, я бы хотел изменить меню, чтобы оно содержало MenuItem
«Стоп». И, наконец, когда выбрано «Стоп», я бы хотел вернуться к «Старт».
Вот части моего кода, которые не работают. У меня есть и «Пуск», и «Стоп», перечисленные в mymenu.xml
Мне, вероятно, следует удалить «Стоп» при создании меню:
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;
}
}