Код: Выделить всё
NavDisplay(
modifier = Modifier.fillMaxSize(),
backStack = backStack,
onBack = { backStack.removeLastOrNull() },
entryDecorators = listOf(
rememberSaveableStateHolderNavEntryDecorator(),
rememberViewModelStoreNavEntryDecorator()
),
transitionSpec = {
// Slide in from right when navigating forward
slideInHorizontally(initialOffsetX = { it }, animationSpec = tween(1000)) togetherWith
slideOutHorizontally(targetOffsetX = { -it }, animationSpec = tween(1000))
},
popTransitionSpec = {
// Slide in from left when navigating back
slideInHorizontally(initialOffsetX = { -it }, animationSpec = tween(1000)) togetherWith
slideOutHorizontally(targetOffsetX = { it }, animationSpec = tween(1000))
},
predictivePopTransitionSpec = {
// Slide in from left when navigating back
slideInHorizontally(initialOffsetX = { -it }, animationSpec = tween(1000)) togetherWith
slideOutHorizontally(targetOffsetX = { it }, animationSpec = tween(1000))
},
entryProvider = entryProvider {
entry {
RootOfDeposit().EntryScreen()
}
entry {
RootOfAccountDetailsScreen()(
accountId = it.accountId,
**onCancel = {
//backStack.removeLastOrNull()
//backStack.removeAt(backStack.lastIndex)
onBackPressedDispatcher?.onBackPressed()
}**
)
}
}
)
Я использовал два подхода для удаления элемента: -
Код: Выделить всё
**onCancel = {
//backStack.removeLastOrNull()
//backStack.removeAt(backStack.lastIndex)
onBackPressedDispatcher?.onBackPressed()
}**
Подробнее здесь: https://stackoverflow.com/questions/798 ... stack-item
Мобильная версия