我正在使用导航组件和BottomNavigationView设置UI。
3个选项卡:主页、新闻、帐户。
当我从主页导航到新闻(目前,后台堆栈有HomeFragment)并按下后退按钮时,片段新闻将被销毁,后台堆栈中的HomeFragment也将被销毁并创建新的HomeFragment。我期望后台堆栈中的HomeFragment再次显示不销毁并创建新的。
我使用以下代码:
bottomNavigation.setupWithNavController(navHostFragment.findNavController())如何解决此问题?
谢谢。
更新问题:
当我单击菜单项时,片段将是创建新实例。我不想这样,我想导航到新的片段,如果它还没有被点击,如果我再次点击菜单项,该片段将再次显示(没有创建新的)。
发布于 2021-04-18 20:28:12
关于你的最新问题。如果您不希望在重新选择时重新创建片段,只需在BottomNavigationView上设置OnNavigationItemReselectedListener
bottomNavigation.setOnNavigationItemReselectedListener { item ->
when (item.itemId) {
R.id.frag1-> {
// do something on reselection or leave empty
}
R.id.frag2-> {
// do something on reselection or leave empty
}
}
}https://stackoverflow.com/questions/63660239
复制相似问题