Может ли кто-нибудь помочь мне определить проблему? Если вам нужен полный код, обратитесь к этому https://github.com/openMF/mifos-mobile/pull/2565 или спросите меня, нужна ли вам какая-либо часть
вот что У меня есть код
Код: Выделить всё
@Composable
fun UpdatePasswordScreen(
viewModel: UpdatePasswordViewModel = hiltViewModel(),
navigateBack: () -> Unit
) {
val uiState by viewModel.updatePasswordUiState.collectAsStateWithLifecycle()
UpdatePasswordScreen(
uiState = uiState,
navigateBack = navigateBack
)
}
@Composable
fun UpdatePasswordScreen(
uiState: RegistrationUiState,
navigateBack: () -> Unit
) {
val context = LocalContext.current
val snackbarHostState = remember { SnackbarHostState() }
Scaffold(snackbarHost = {
SnackbarHost(hostState = snackbarHostState)
}, topBar = {
MifosTopBar(
title = { Text(text = stringResource(id = R.string.change_password)) },
navigateBack = navigateBack
)
}) {
Box(
modifier = Modifier.padding(it)
) {
UpdatePasswordContent()
when (uiState) {
is RegistrationUiState.Loading -> {
MifosProgressIndicator(
modifier = Modifier
.fillMaxSize()
.background(MaterialTheme.colorScheme.background.copy(0.8f))
)
}
is RegistrationUiState.Error -> {
LaunchedEffect(snackbarHostState) {
snackbarHostState.showSnackbar(
context.getString(R.string.could_not_update_password_error),
context.getString(R.string.dialog_action_ok),
duration = SnackbarDuration.Short
)
}
}
is RegistrationUiState.Initial -> Unit
is RegistrationUiState.Success -> {
LaunchedEffect(snackbarHostState) {
snackbarHostState.showSnackbar(
context.getString(R.string.password_changed_successfully),
context.getString(R.string.dialog_action_ok),
duration = SnackbarDuration.Short
)
}
navigateBack.invoke()
}
}
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/784 ... -my-screen