為什么當我使用 backStackEntryCount > 1.popbackstack() 時無法導航到我底部導航的任何片段
我需要知道什么,例如堆疊碎片如何僅一次,以便我可以按一次就回到我的活動
private fun navBottomClick() {
bottomNavigationView?.setOnItemSelectedListener {
when (it.itemId) {
R.id.workout -> {
var fragmentTransaction: FragmentTransaction =
supportFragmentManager.beginTransaction()
fragmentTransaction.replace(R.id.container, WorkoutFragment(), "WORKOUT")
fragmentTransaction.addToBackStack("WORKOUT")
fragmentTransaction.commit()
}
R.id.health -> {
var fragmentTransaction: FragmentTransaction =
supportFragmentManager.beginTransaction()
fragmentTransaction.replace(R.id.container, HealthyFoodFragment(), "HealthFood")
fragmentTransaction.addToBackStack("HealthFood")
fragmentTransaction.commit()
}
}
true
}
}
uj5u.com熱心網友回復:
嘗試列印日志supportFragmentManager.backStackEntryCount。
我的意見是條件是supportFragmentManager.backStackEntryCount > 0。
uj5u.com熱心網友回復:
沒有 backStack 你可以試試這個
override fun onBackPressed() {
if (binding.bottomNavigation.selectedItemId == R.id.home) {
moveTaskToBack(true)
} else {
binding.bottomNavigation.selectedItemId = R.id.home
val homeFragment = HomeFragment.newInstance()
openFragment(homeFragment)
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/388565.html
下一篇:添加表時房間遷移失敗
