Я использую NavigationView с DrawerLayout.
Мой код:
NavHeaderMainBinding navHeaderMainBinding = DataBindingUtil.inflate(getLayoutInflater(),
R.layout.nav_header_main, mActivityMainBinding.navigationView, false);
mActivityMainBinding.navigationView.addHeaderView(navHeaderMainBinding.getRoot());
navHeaderMainBinding.setViewModel(mMainViewModel);
addNavigationItem();
NavigationUI.setupWithNavController(mActivityMainBinding.navigationView, navController);
mNavigationView.setNavigationItemSelectedListener(
item -> {
mDrawer.closeDrawer(GravityCompat.START);
switch (item.getItemId()) {
case 0:
// setFragment(AboutFragment.newInstance(), AboutFragment.TAG);
navController.navigate(R.id.nav_home);
return true;
case 1:
navController.navigate(R.id.nav_paging);
// RateUsDialog.newInstance().show(getSupportFragmentManager());
return true;
case 2:
// startActivity(FeedActivity.newIntent(MainActivity.this));
return true;
case 3:
mMainViewModel.logout();
return true;
default:
return false;
}
});
Теперь проблема заключается в том, что при многократном нажатии на второй элемент из ящика навигацииего создать много объектов и создать проблему в задней печати.Когда я снова нажимаю на кнопку закрытия, все объекты второго фрагмента затем возвращаются к первому фрагменту.Я хочу создать единственный экземпляр из всех фрагментов, которые открываются при щелчке элемента ящика навигации.Как мне этого добиться?