Navigation Operations
Guia provides an extensive list of navigation operations.
currentKey
val Navigator.currentKeyReturns the current NavigationKey
currentEntry
val Navigator.currentEntryReturns the current BackStackEntry
push
fun Navigator.push(
navigationKey: NavigationKey
)Adds a new key to the backstack.
pop
fun Navigator.pop(): BooleanPops the last entry in the backstack.
replaceLast
fun Navigator.replaceLast(
navigationKey: NavigationKey
)Adds a new key to the backstack.
replaceUpTo
fun Navigator.replaceUpTo(
navigationKey: NavigationKey,
inclusive: Boolean = true,
predicate: (NavigationKey) -> Boolean
)Loops through navigation keys from the top of the backstack until the predicate is satisfied and replaces all those keys with a new key.
replaceUpTo [Key]
inline fun <reified Key : NavigationKey> Navigator.replaceUpTo(
navigationKey: NavigationKey,
inclusive: Boolean = false
)Replaces all navigation keys in the backstack until a key of type [Key] is reached.
moveToTop
fun Navigator.moveToTop(
match: Match = Match.Last,
predicate: (NavigationKey) -> Boolean
): BooleanMoves a navigation key that matches the given condition to the top
moveToTop [Key]
inline fun <reified Key : NavigationKey> Navigator.moveToTop(
match: Match = Match.Last,
)Moves a navigation key of type [Key] to the top of backstack.
singleInstance
inline fun <reified Key : NavigationKey> Navigator.singleInstance(
navigationKey: Key,
match: Match = Match.Last,
checkForExisting: Boolean = false,
)Navigates to a navigation key and removes all navigation keys that are of the same type from the backstack.
singleTop
inline fun <reified Key : NavigationKey> Navigator.singleTop(
navigationKey: Key
)Navigates to [navigationKey] if the currentKey is not of the same type.
popTo
fun Navigator.popTo(
inclusive: Boolean = false,
predicate: (NavigationKey) -> Boolean,
)Pops to a [NavigationKey] matching [predicate]
popTo [Key]
inline fun <reified Key : NavigationKey> Navigator.popTo(
inclusive: Boolean = false,
crossinline predicate: (Key) -> Boolean = { true },
)Pops to a [NavigationKey] of the same type [Key].
removeAll
fun Navigator.removeAll(
predicate: (NavigationKey) -> Boolean
)Removes all navigation keys matching [predicate].
removeAll [Key]
inline fun <reified Key : NavigationKey> Navigator.removeAll()Removes all navigation keys that are of type [Key].
popToRoot
fun Navigator.popToRoot()Pops to the root of the backstack.
setRoot
fun Navigator.setRoot(
navigationKey: NavigationKey
) Clears the backstack and sets a new root [NavigationKey]
canGoback
fun Navigator.canGoBack(): BooleanWhether or not the navigator has more than one element and can pop back stack.
none
fun Navigator.none(
predicate: (NavigationKey) -> Boolean
)Checks if none of the navigation keys matches the condition.
none [Key]
inline fun <reified Key : NavigationKey> Navigator.none()Checks if none of the navigation keys is of type [Key].
any
fun Navigator.any(
predicate: (NavigationKey) -> Boolean
)Checks if any of the navigation keys matches the condition.
any [Key]
inline fun <reified Key : NavigationKey> Navigator.any()Checks if any of the navigation keys is of type [Key].
Last updated