0xf1f1
08/13/2024, 4:57 AMWhen I click through to one of the forms, edit it and save, thefor that form is changed toviewState
, and the user is redirected back to the overview. When I go back to that form, I am redirected back to the overview page. In other words theSaved
is stillviewState
and not reset to it's default. How do I fix this ?Saved
0xf1f1
08/13/2024, 4:58 AM@Composable
fun MyForm(state: FormState, viewState: FormViewState, navToOverview: () -> Unit) {
when (viewState) {
None -> ShowForm()
Saved -> navToOverview()
}
}
ComposeNavigation.kt
class ComposeNavigation(
private val navController: NavHostController,
private val formVM: FormViewModel,
) {
@Composable
fun CreateGraph() {
NavHost(
navController = navController,
startDestination = NavRoute.Auth.Route
) {
// other composables ...
composable<Routes.Overview.EditForm> {
FormScreen(
formState = formVM.formState.collectAsState().value,
viewState = formVM.viewState.collectAsState().value,
navToOverview = { navController.navigate(Routes.Overview.Home) }
)
}
}
}
}
Activity.kt
class Activity : ComponentActivity() {
private val formVM: FormViewModel
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val navController = rememberNavController()
val navGraphFactory = ComposeNavigation(
navController,
loginVM
)
val navigator = Navigator()
navigator.setController(navController)
navGraphFactory.CreateGraph()
}
}