Skip to content

Instantly share code, notes, and snippets.

@renanboni
Created August 3, 2022 15:16
Show Gist options
  • Select an option

  • Save renanboni/c8da452d5c946f8fcbecc22d2759036e to your computer and use it in GitHub Desktop.

Select an option

Save renanboni/c8da452d5c946f8fcbecc22d2759036e to your computer and use it in GitHub Desktop.
AuthGraph
fun NavGraphBuilder.authGraph(navController: NavController) {
navigation(
startDestination = AuthScreens.Login.route,
route = Graph.AUTHENTICATION
) {
composable(AuthScreens.Login.route) {
LoginScreen(navController = navController)
}
composable(AuthScreens.SignUp.route) {
SignUpScreen(navController = navController)
}
}
}
sealed class AuthScreens(val route: String) {
object SignUp : AuthScreens(route = "sign_up")
object Login : AuthScreens(route = "login")
}
@Composable
fun LoginScreen(navController: NavController) {
Box(
modifier = Modifier.fillMaxSize(),
contentAlignment = Alignment.Center
) {
Button(onClick = {
navController.navigate(AuthScreens.SignUp.route)
}) {
Text(text = "Sign Up")
}
}
}
@Composable
fun SignUpScreen(navController: NavController) {
Box(
modifier = Modifier.fillMaxSize(),
contentAlignment = Alignment.Center
) {
Button(onClick = {
navController.popBackStack()
}) {
Text(text = "Back")
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment