NavController и global actions - не работают при клике на пункты меню

Проблема следующего рода: создал приложение на основе Navigation Drawer. Получил граф переходов. Для каждого фрагмента в графе - назначил Global action, которая описывает анимацию при входе и выходе из фрагмента.

Если вызывать вот так, (например, по клику на кнопку):

Navigation.findNavController(view).navigate(R.id.action_global_nav_devices);

т.е. вызывать action напрямую - то всё чудесно, анимация перехода работает. Но при этом - совершенно не работает анимация переходов при клике на пунктах меню Drawer. Связываются они, ясное дело, штатным образом:

DrawerLayout drawer = findViewById(R.id.drawer_layout);
    NavigationView navigationView = findViewById(R.id.nav_view);
    // Passing each menu ID as a set of Ids because each
    // menu should be considered as top level destinations.
    mAppBarConfiguration = new AppBarConfiguration.Builder(
            R.id.nav_status, R.id.nav_sensors, R.id.nav_devices,
            R.id.nav_settings, R.id.nav_share, R.id.nav_send)
            .setDrawerLayout(drawer)
            .build();

navController = Navigation.findNavController(this, R.id.nav_host_fragment);
    NavigationUI.setupActionBarWithNavController(this, navController, mAppBarConfiguration);
    NavigationUI.setupWithNavController(navigationView, navController);

Подозреваю, что система в этом случае просто не выполняет global action для пункта меню.

Вопрос: как это дело вылечить, и дать понять системе, что при клике на пункт меню - я однозначно хочу выполнить action, привязанный к этому пункту меню?


Ответы (0 шт):