如何解决在两个导航图之间跳转
对于导航,我使用 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 举报,一经查实,本站将立刻删除。