#android #navigation-drawer #drawerlayout
#Android #навигация-ящик #drawerlayout
Вопрос:
Это код определения для моего полного ящика:
NavigationView navigationView = findViewById(R.id.nav_view);
mAppBarConfiguration = new AppBarConfiguration.Builder(
R.id.nav_home, R.id.nav_lontr, R.id.nav_att, R.id.nav_djong,
R.id.nav_fon).setOpenableLayout(drawer)
.build();
NavHostFragment navHostFragment = (NavHostFragment) getSupportFragmentManager().findFragmentById(R.id.nav_host_fragment);
NavController navController = navHostFragment.getNavController();
NavigationUI.setupActionBarWithNavController(this, navController, mAppBarConfiguration); // Here my nav action bar
NavigationUI.setupWithNavController(navigationView, navController);
Представьте, что пользователь находится в nav_lontr, и я хочу создать для него ярлык, чтобы вернуться к nav_home, это выглядит так:
shortcuttoOther.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
getActivity().getSupportFragmentManager().popBackStack();
}
});
После отправки popBackStack текущий фрагмент закрывается, однако панель приложений сохраняет имя фрагмента закрытым, несмотря на возврат к домашней навигации, кроме того, в боковом ящике также выбирается фрагмент, который был закрыт.
Почему даже после закрытия текущего фрагмента с помощью popBackStack мой NavigationUI не обновляет мою панель приложений заголовком текущей метки (home)?
Вместо отображения заголовка на панели приложений моего фрагмента home, он отображает заголовок фрагмента, закрытого popbackstack, который является фрагментом, который уже был закрыт.