Мне интересно, как использовать перечисления в Java.Я работаю над приложением рецептов для Android.У меня есть экран с четырьмя вкладками в TabHost, и я хотел бы ссылаться на них через именованные константы, и я считаю, что лучше всего делать это через перечисление.
private enum mTab {
TAB_NAME(0), TAB_INGREDIENT(1), TAB_STEP(2), TAB_MEDIA(3);
final int numTab;
private mTab(int num){
this.numTab = num;
}
public int getValue(){
return this.numTab;
}
};
Теперь я хотел бы создать отдельное меню для каждой вкладки.Например, для TAB_INGREDIENT мне бы хотелось, чтобы пункт меню назывался «Добавить ингредиент», а для TAB_MEDIA я бы хотел пункт меню под названием «Добавить изображение».), вот так
public boolean onPrepareOptionsMenu(Menu menu) {
// Clear menu before showing new menu
menu.clear();
super.onPrepareOptionsMenu(menu);
// Create new menu based on current tab
MenuInflater inflater = getMenuInflater();
int tab = getTabHost().getCurrentTab();
switch (tab) {
...
}
return true;
}
Проблема в том, что я не знаю, что вставить в оператор switch.Более конкретно, я не знаю, как сравнить «tab», которое является целым числом, соответствующим текущей выбранной вкладке, с элементом enum.