Как лучше всего выделить нужный пункт меню в BottomNavigationView после возвращения к этому действию?
Мой сценарий: MainActivity с нижней навигацией, которая переключается между фрагментами и запускает другие действия. Действия, запускаемые из этого меню, имеют android:parentActivityName=".activities.MainActivity"
в файле манифеста. Щелчок по кнопке «Назад» на верхней панели возвращает меня к нужному действию, и последний посещенный фрагмент в этом действии также отображается, так как я добавил android:launchMode="singleTop"
для MainActivity. НО всегда выделен первый пункт меню :-(
Мой обходной путь на данный момент состоит в том, чтобы добавить следующий код к каждому фрагменту (не очень приятно)
@Override
public void onResume() {
super.onResume();
BottomNavigationView navigation = (BottomNavigationView) getActivity().findViewById(R.id.navigation);
Menu menu = navigation.getMenu();
for (int i = 0; i < menu.size() ; i++) {
menu.getItem(i).setChecked(false);
}
menu.getItem(MENU_ITEM_POS).setChecked(true);
}
onSaveInstance()
, но я полагаю, что он не работает, если режим запуска - одиночный. - person Thracian   schedule 20.10.2017MENU_ITEM_POS
) и ПРЕДЫДУЩИЙ (PREVIOUS_MENU_ITEM_POS
). Таким образом, вам не понадобится петля. - person Ellisan   schedule 20.10.2017