Эй,
Я реализовал меню, в котором есть два пункта меню, и когда я нажимаю на первый пункт, другой пункт меню отключается и наоборот.
И когда я нажимаю на значок навигации кнопки «Назад», я должен проверить, отключен ли первый элемент или нет, и если он отключен, то включить второй элемент, а если нет, то onBackPressed();
Итак, я не знаю, как распознать, какой элемент отключен.
Пожалуйста, помогите мне быстро.
Есть ссылки на код
Это моя текущая попытка, и в ней также есть некоторые ошибки. Пожалуйста, помогите мне найти другой способ или исправить этот код.
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (menu.getItem(0).getActionView().getVisibility() == View.VISIBLE) {
onBackPressed();
} else {
menu.getItem(1).setEnabled(false);
menu.getItem(1).setVisible(false);
menu.getItem(0).setEnabled(true);
menu.getItem(0).setVisible(true);
}
}
});
да, это из onCreateOptionsMenu()
в onCreateOptionsMenu()
сохраните menu
в поле локального класса, а затем, чтобы проверить, включен/отключен ли определенный пункт меню, используйте isEnabled()
MenuItem item = menu.findItem(R.id.item_id);
if (item.isEnabled()) {
// enabled
} else {
// not enabled
}
Или вы можете использовать порядок пункта среди пунктов меню, чтобы получить конкретный пункт
MenuItem item = menu.getItem(0);
Пожалуйста, предоставьте больше кода .. как вы получаете
menu
var .. это отonCreateOptionsMenu()
?