在两个导航图之间跳转

如何解决在两个导航图之间跳转

对于导航,我使用 Navigation 组件,我使用 Navigation Extension BottomNavigationView 连接到它。我试图从一个图表切换到另一个图表,但他总是向我展示一个错误,他找不到去哪里的路径。如果从一个图到另一个图的方式

Navigation Component和bottomNavView连接的代码

class MainActivity : AppCompatActivity(R.layout.activity_main) {

    private lateinit var appBarConfiguration: AppBarConfiguration
    private var currentNavController: LiveData<NavController>? = null


    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)

        window.decorView.systemUIVisibility = View.SYstem_UI_FLAG_LIGHT_STATUS_BAR;


        if (savedInstanceState == null) {
            initNavigationComponent()

        }
    }

    override fun onRestoreInstanceState(savedInstanceState: Bundle) {
        super.onRestoreInstanceState(savedInstanceState)
        
        initNavigationComponent()
    }

    override fun onSupportNavigateUp(): Boolean {
        return currentNavController?.value?.navigateUp(appBarConfiguration) ?: false
                || super.onSupportNavigateUp()
    }

    private fun initNavigationComponent() {

        appBarConfiguration =
            AppBarConfiguration(setof(R.id.auth_fragment,R.id.main_screen_fragment))

        setSupportActionBar(toolbar)

        val navGraphIds =
            listof(R.navigation.nav_main,R.navigation.nav_catalog,R.navigation.nav_profile)

        // Setup the bottom navigation view with a list of navigation graphs
        val controller = bottom_nav.setupWithNavController(
            navGraphIds = navGraphIds,fragmentManager = supportFragmentManager,containerId = R.id.main_nav_fragment,intent = intent
        )

        controller.observe(this,{ navController ->
            setupActionBarWithNavController(navController,appBarConfiguration)

            collapsingToolbarLayout.setupWithNavController(
                toolbar,navController,appBarConfiguration
            )

            navController.addOnDestinationChangedListener {...} )

        currentNavController = controller

    }
}

尝试与 <include app:graph = "@navigation/myGraph" /> 连接,但也不起作用

解决方法

对于BottomNavigationView 选项卡之间的多backstack 导航,请使用以下谷歌示例: Multiple BackStack Navigation

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?