Android 带有BottomNavigationView和多个片段的NavigationUI:禁用ActionBar up/back按钮

Android 带有BottomNavigationView和多个片段的NavigationUI:禁用ActionBar up/back按钮,android,android-jetpack,android-jetpack-navigation,Android,Android Jetpack,Android Jetpack Navigation,我有一个BottomNavigationView和一组片段,它们是它的第一级目的地。我想从ActionBar中为这些片段禁用back按钮。我怎样才能做到这一点 @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main

我有一个BottomNavigationView和一组片段,它们是它的第一级目的地。我想从ActionBar中为这些片段禁用back按钮。我怎样才能做到这一点

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        navView = findViewById(R.id.nav_view);
        NavHostFragment navHostFragment = (NavHostFragment) getSupportFragmentManager().findFragmentById(R.id.nav_host_fragment);
        if (navHostFragment != null) {
            NavigationUI.setupWithNavController(navView, navHostFragment.getNavController());
            NavigationUI.setupActionBarWithNavController(this, navHostFragment.getNavController());
        }
    }
R.layout.activity\u main
没有明确包含工具栏,我使用的是以下主题:
主题.MaterialComponents.Light.darkaActionBar
在您的设置中(底部导航视图+工具栏+每个底部栏项的片段),如果实现正确,应该没有向上/向后按钮。实施需要多个步骤,请在您的实施中参考这一点-它基本上有完整的解决方案。关键是使用

注:我必须提到的是,系统后退按钮在这个设置中工作(它应该)。它的工作原理是这样的:若你们在底部栏的第二个标签上,用户按下system back,用户将被导航到底部栏的第一个标签。只有当用户在底部栏的第一个选项卡上按“系统”返回时,应用程序才会关闭