1
1
package es.cibernarium.jetpackcomposeapp.pantalles
2
2
3
+ import android.util.Log
3
4
import androidx.compose.foundation.layout.Arrangement
4
5
import androidx.compose.foundation.layout.Column
5
6
import androidx.compose.foundation.layout.fillMaxSize
@@ -19,6 +20,7 @@ import androidx.compose.material3.Text
19
20
import androidx.compose.runtime.Composable
20
21
import androidx.compose.runtime.MutableState
21
22
import androidx.compose.runtime.mutableStateOf
23
+ import androidx.compose.runtime.remember
22
24
import androidx.compose.runtime.saveable.rememberSaveable
23
25
import androidx.compose.ui.Alignment
24
26
import androidx.compose.ui.Modifier
@@ -48,6 +50,8 @@ fun LoginScreen(navController: NavController){
48
50
isCreateAccount = false
49
51
){
50
52
email, clau ->
53
+ // Afegim un log per saber si és submiteja el login
54
+ Log .d(" Refugios Libres" ," Loguejant amb $email i $clau " )
51
55
}
52
56
} else {
53
57
Text (text = " Crea un compte" )
@@ -77,6 +81,12 @@ fun UserForm(
77
81
val clauVisible = rememberSaveable {
78
82
mutableStateOf(false )
79
83
}
84
+ // Crearem una variable per saber si tots els camps són vàlids
85
+ val valid = remember(email.value,clau.value){
86
+ // Obtenim el valor, eliminem espais en blanc i validem que no està buit
87
+ email.value.trim().isNotEmpty() &&
88
+ clau.value.trim().isNotEmpty()
89
+ }
80
90
// Crearem una columna perque estigui situat en vertical
81
91
Column (horizontalAlignment = Alignment .CenterHorizontally ){
82
92
EmailInput (
@@ -88,21 +98,30 @@ fun UserForm(
88
98
clauVisible = clauVisible
89
99
)
90
100
SubmitButton (
91
- textId = if (isCreateAccount) " Crear compte" else " Login"
92
- )
101
+ textId = if (isCreateAccount) " Crear compte" else " Login" ,
102
+ // Rebem el valor de si els camps estàn ok de la variable valid
103
+ inputValid = valid
104
+ ){
105
+ // Invoquem la funció onDone() per a quan estigui tot gestioni el formulari
106
+ onDone(email.value.trim(),clau.value.trim())
107
+ }
93
108
}
94
109
}
95
110
96
111
@Composable
97
112
fun SubmitButton (
98
- textId : String
113
+ textId : String ,
114
+ // Rebem el valor de inputValid
115
+ inputValid : Boolean ,
116
+ // Desenvolupem la acció onClick
117
+ onClic : ()-> Unit
99
118
) {
100
- Button (onClick = {
101
- },
119
+ Button (onClick = onClic, // També aqui enllaçem amb el onClic
102
120
modifier = Modifier
103
121
.padding(3 .dp)
104
122
.fillMaxWidth(),
105
- shape = CircleShape
123
+ shape = CircleShape ,
124
+ enabled = inputValid // Habilitem el botò segons si inputValid és true
106
125
){
107
126
Text (text = textId,
108
127
modifier = Modifier
0 commit comments