Не удается установить активный элемент BottomNavigationView при воссоздании приложения
Невозможно установить активный элемент BottomNavigationView при воссоздании приложения: последний выбранный элемент активен после воссоздания приложения, поэтому BottomNavigationView.setSelectedItemId(R.id.item0)
не требует визуального эффекта, но onNavigationItemSelected
был вызван успешно.
Итак, как я могу предотвратить восстановление предыдущего активного элемента BNV? Благодарю.
1 ответ
Вы должны сделать это внутри onResume()
вместо этого, потому что в то время как ваше приложение в последних приложениях, то BottomNavigationView
всегда будет ловить позицию.
Почему заданная позиция не работает?
Потому что вы устанавливаете позицию внутри onCreate()
который не вызывается при запуске приложения из последних приложений.
Как установить позицию тогда?
Внутри в onStart()
или же onResume()
и это сработает.
Как проверить, открыто ли приложение из недавних приложений?
Мы можем играть с логическим, например:
boolean isFromRecents = false;
onCreate(){
isFromRecents = true;
}
onResume(){
if(isFromRecents)
//do smth
}