Невозможно перейти к определенному фрагменту при использовании компонента навигации - PullRequest
0 голосов
/ 03 октября 2019

Я установил в своей активности Навигационный ящик и панель инструментов. Это действие содержит RestaurantFragment с настраиваемой панелью инструментов, где у меня есть кнопка, которая помогает мне перейти на MapFragment, и кнопка «Назад», с которой я хочу сделать то же самое. Это то, что я делаю с map_button и работает нормально:

toolbar.setOnMenuItemClickListener(item -> {
    if (item.getItemId() == R.id.map_button) {
        goToMapFragment();
        return true;
    }
    return false;
});

Однако, если использовать этот код:

toolbar.setNavigationOnClickListener(v -> {
    goToMapFragment();
});

Метод вызывается, но ничего не происходит. Это мой goToMapFragment(); метод:

private void goToMapFragment() {
    ActionRestarantFragmentToMapFragment action = actionRestarantFragmentToMapFragment();
    action.setRestaurant(restaurant);
    Navigation.findNavController(rootView).navigate(action);
}

Если я заменю вызов goToMapFragment(); на getActivity().onBackPressed();, я получаю последний посещенный фрагмент, но это не то, что я хочу. Как заставить goToMapFragment() также работать во втором случае? Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...