Измените вкладку и просматривайте программно с помощью BottomNavigationView - PullRequest
0 голосов
/ 29 мая 2020

Я использую BottomNavigationView с компонентом архитектуры навигации. Я хочу изменить вкладку и фрагмент при нажатии на какой-то вид. Но появляется Ignoring navigate() call: FragmentManager has already saved its state, и фрагмент не изменяется.

val bottomNavigationView = findViewById<BottomNavigationView>(R.id.bottom_navigation)
val navGraphIds = listOf(R.navigation.tab1, R.navigation.tab2, R.navigation.tab3)
val controller = bottomNavigationView.setupWithNavController(
    navGraphIds = navGraphIds,
    fragmentManager = supportFragmentManager,
    containerId = R.id.Main__nav_host,
    intent = intent
)
currentNavController = controller
fun onClick(view: View) {
    bottomNavigationView.selectedItemId = R.id.tab3
    // super.onPostResume()
    currentNavController?.value?.popBackStack(R.id.tab3StartDestinationFragment, false)
}

Если я включил super.onPostResume(), этот код работает нормально, но закомментируйте его, этот код не работает.

мой вопрос:

  1. Как правильно?
  2. Почему эта работа super.onPostResume() вызывается?
...