Skip to content

Instantly share code, notes, and snippets.

@NezSpencer
Created October 7, 2018 11:02
Show Gist options
  • Save NezSpencer/1b08b9ea65d0812dcd56375b399b0085 to your computer and use it in GitHub Desktop.
Save NezSpencer/1b08b9ea65d0812dcd56375b399b0085 to your computer and use it in GitHub Desktop.
move back x times in fragment backstack
private fun moveBackXTimes(numOfTimes : Int) {
if (!lifecycle.currentState.isAtLeast(Lifecycle.State.STARTED))
return
val backStackCount = supportFragmentManager.backStackEntryCount
if (numOfTimes >= backStackCount) {
throw UnsupportedOperationException("Number of times specified $numOfTimes is greater" +
" than the backstackEntryCount")
}
val fragment = supportFragmentManager.getBackStackEntryAt(backStackCount - numOfTimes)
supportFragmentManager.popBackStackImmediate(fragment::class.simpleName, 0)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment