BottomNavigation with NavController 没有 retrieve/parse 参数正确

BottomNavigation with NavController doesn't retrieve/parse arguments correctly

我在使用 BottomNavigation 和 NavigationUI 检索 Fragment 中的参数时遇到了一些问题。我在导航到 addOrderFragment(picture) 后检索到空值。我不知道为什么这不起作用。

导航布局:http://prntscr.com/pf9tl1
Activity 布局:http://prntscr.com/pf9u4q
Activity 布局有一个 NavHost 片段,其中所有其他布局都被放大并且该片段中的导航工作正常。

主要activity

  UID = getIntent().getStringExtra("UID");
    Bundle args = new Bundle();
    args.putString("UID", UID);
    //navigation
    controller = Navigation.findNavController(this, R.id.fragment_container);
    controller.setGraph(R.navigation.navigation_mainmenu, args);
    controller.navigate(R.id.mainMenuFragment, args);
    bottomNav = findViewById(R.id.bottom_navigation);
    NavigationUI.setupWithNavController(bottomNav, controller);

导航到另一个片段后从中检索 UID

 controller = Navigation.findNavController(view);
        try {
            UID = getArguments().getString("UID"); <---gets null 
        } catch (Exception e) {
            Crashlytics.logException(e);
        }

如果您的 UID 对于您的 activity 是全局的,您根本不应该使用 Fragment 参数。片段可以调用 requireActivity().getIntent().getStringExtra("UID") 从 Activity.

中检索额外内容