Skip to content

Instantly share code, notes, and snippets.

@GrishinSergey
Last active May 24, 2024 14:56
Show Gist options
  • Save GrishinSergey/777298657acd8becf4c9be93b969bc7b to your computer and use it in GitHub Desktop.
Save GrishinSergey/777298657acd8becf4c9be93b969bc7b to your computer and use it in GitHub Desktop.
val navController = rememberNavController()
NavHost(
navController = navController,
startDestination = ChatsNavGraph,
enterTransition = { slideIntoContainer(Left, tween(250)) },
exitTransition = { slideOutOfContainer(Left, tween(250)) },
popEnterTransition = { slideIntoContainer(Right, tween(250)) },
popExitTransition = { slideOutOfContainer(Right, tween(250)) },
) {
navigation<ChatsNavGraph>(startDestination = ChatsListArgs()) {
composable<ChatsListArgs> {
ChatsListScreen(
onCreateNewChat = { },
onChatSelected = { navController.navigate(ChatMessagesArgs(it)) },
)
}
composable<ChatMessagesArgs> {
ChatMessagesScreen(
openUserDetails = { navController.navigate(UserDetailsArgs(it)) },
onBackPressed = { navController.popBackStack() },
)
}
}
navigation<CoreNavGraph>(startDestination = Any()) {
composable<UserDetailsArgs> {
UserDetailsScreen(
onBackPressed = { navController.popBackStack() },
)
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment