new_select_screen #9
@ -1 +1,3 @@
|
||||
penpot deck: https://pp.sicampus.ru/#/workspace?team-id=14a6b474-d5fa-807f-8007-9f0741c1b7ad&project-id=14a6b474-d5fa-807f-8007-9f0741c1b7ae&file-id=8e3f3321-7df1-807a-8007-9f6a7201af74&page-id=50b061ab-362d-8056-8007-9d94752aa99f&layout=layers&board-id=6fa8b836-315d-80ad-8007-9f6ddff01da2
|
||||
login: anna
|
||||
password: qwerty1!
|
||||
BIN
S-APP-MINIPIGS.penpot
Normal file
BIN
S-APP-MINIPIGS.penpot
Normal file
Binary file not shown.
@ -17,6 +17,7 @@
|
||||
tools:targetApi="31">
|
||||
<activity
|
||||
android:name=".ui.root.RootActivity"
|
||||
android:screenOrientation="portrait"
|
||||
android:exported="true"
|
||||
android:windowSoftInputMode="adjustNothing"
|
||||
android:label="@string/title_activity_root">
|
||||
|
||||
@ -1,15 +1,20 @@
|
||||
package ru.myitschool.work.ui.screen.auth
|
||||
|
||||
import androidx.compose.animation.AnimatedContent
|
||||
import androidx.compose.animation.AnimatedVisibility
|
||||
import androidx.compose.foundation.layout.Arrangement
|
||||
import androidx.compose.foundation.layout.BoxWithConstraints
|
||||
import androidx.compose.foundation.layout.Column
|
||||
import androidx.compose.foundation.layout.ExperimentalLayoutApi
|
||||
import androidx.compose.foundation.layout.Spacer
|
||||
import androidx.compose.foundation.layout.WindowInsets
|
||||
import androidx.compose.foundation.layout.fillMaxSize
|
||||
import androidx.compose.foundation.layout.fillMaxWidth
|
||||
import androidx.compose.foundation.layout.height
|
||||
import androidx.compose.foundation.layout.ime
|
||||
import androidx.compose.foundation.layout.imeNestedScroll
|
||||
import androidx.compose.foundation.layout.imePadding
|
||||
import androidx.compose.foundation.layout.isImeVisible
|
||||
import androidx.compose.foundation.layout.padding
|
||||
import androidx.compose.foundation.layout.size
|
||||
import androidx.compose.foundation.rememberScrollState
|
||||
@ -49,6 +54,7 @@ fun AuthScreen(
|
||||
navController: NavController
|
||||
) {
|
||||
val state by viewModel.uiState.collectAsState()
|
||||
val isIme = WindowInsets.isImeVisible
|
||||
|
||||
LaunchedEffect(Unit) {
|
||||
viewModel.actionFlow.collect { action ->
|
||||
@ -72,7 +78,7 @@ fun AuthScreen(
|
||||
verticalArrangement = Arrangement.Center
|
||||
) {
|
||||
when (val currentState = state) {
|
||||
is AuthState.Data -> Content(viewModel, currentState)
|
||||
is AuthState.Data -> Content(viewModel, currentState, isIme)
|
||||
is AuthState.Loading -> {
|
||||
CircularProgressIndicator(
|
||||
modifier = Modifier.size(64.dp)
|
||||
@ -86,17 +92,22 @@ fun AuthScreen(
|
||||
@Composable
|
||||
private fun Content(
|
||||
viewModel: AuthViewModel,
|
||||
state: AuthState.Data
|
||||
state: AuthState.Data,
|
||||
isIme: Boolean
|
||||
) {
|
||||
var login by remember { mutableStateOf("") }
|
||||
var password by remember { mutableStateOf("") }
|
||||
|
||||
Icon(
|
||||
painter = painterResource(R.drawable.difference),
|
||||
contentDescription = stringResource(R.string.icon_alter),
|
||||
tint = MaterialTheme.colorScheme.primary,
|
||||
modifier = Modifier.size(184.dp)
|
||||
)
|
||||
|
||||
AnimatedVisibility(!isIme ) {
|
||||
Icon(
|
||||
painter = painterResource(R.drawable.difference),
|
||||
contentDescription = stringResource(R.string.icon_alter),
|
||||
tint = MaterialTheme.colorScheme.primary,
|
||||
modifier = Modifier.size(184.dp)
|
||||
)
|
||||
}
|
||||
|
||||
Spacer(modifier = Modifier.size(48.dp))
|
||||
Text(
|
||||
text = stringResource(R.string.auth_title_1),
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user