Avancée android + profile page

android
Lucie GOIGOUX 1 year ago
parent 6f66b23fe3
commit c621f51333

@ -18,7 +18,9 @@ import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.Color
import androidx.compose.ui.res.painterResource import androidx.compose.ui.res.painterResource
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp import androidx.compose.ui.unit.sp
import androidx.navigation.compose.NavHost import androidx.navigation.compose.NavHost
@ -27,7 +29,7 @@ import androidx.navigation.compose.rememberNavController
import sae.android.sae_2a.R import sae.android.sae_2a.R
import sae.android.sae_2a.game.VocabularyScreen import sae.android.sae_2a.game.VocabularyScreen
@Preview
@Composable @Composable
fun MyApp() { fun MyApp() {
val navController = rememberNavController() val navController = rememberNavController()
@ -61,26 +63,25 @@ fun HomeScreen(NavigateToRegister: () -> Unit,NavigateToLogin: () -> Unit ){
.size(width = 200.dp, height = 200.dp) .size(width = 200.dp, height = 200.dp)
) )
Text(text ="InEnglishPlease", color = Color.White, fontSize = 30.sp, fontWeight = FontWeight(1000) , modifier = Modifier Text(text ="InEnglishPlease", color = Color.White, fontSize = 30.sp, fontWeight = FontWeight(1000) , modifier = Modifier
.padding(40.dp) .padding(70.dp)
.wrapContentHeight(align = Alignment.Top) .wrapContentHeight(align = Alignment.Top)
.wrapContentWidth(align = Alignment.CenterHorizontally) .wrapContentWidth(align = Alignment.CenterHorizontally)
.align(alignment = Alignment.CenterHorizontally)) .align(alignment = Alignment.CenterHorizontally))
Button( onClick = { NavigateToLogin() }, modifier = Modifier Button( onClick = { NavigateToLogin() }, modifier = Modifier
.padding(10.dp)
.padding(30.dp) .width(500.dp)
.width(150.dp)
.height(80.dp) .height(80.dp)
.align(alignment = Alignment.CenterHorizontally)) { .align(alignment = Alignment.CenterHorizontally)) {
Text(text = "Login", fontSize = 20.sp) Text(text = stringResource(id = R.string.logIn), fontSize = 20.sp)
} }
Button(onClick = { NavigateToRegister() },modifier = Modifier Button(onClick = { NavigateToRegister() },modifier = Modifier
.padding(30.dp) .width(500.dp)
.width(150.dp) .padding(10.dp)
.height(80.dp) .height(80.dp)
.align(alignment = Alignment.CenterHorizontally)) { .align(alignment = Alignment.CenterHorizontally)) {
Text(text = "Register", fontSize = 20.sp) Text(text = stringResource(id = R.string.signIn), fontSize = 20.sp)
} }
} }
} }

@ -15,21 +15,25 @@ import androidx.compose.runtime.*
import androidx.compose.ui.Alignment import androidx.compose.ui.Alignment
import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.Color
import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.font.FontFamily import androidx.compose.ui.text.font.FontFamily
import androidx.compose.ui.text.font.FontStyle
import androidx.compose.ui.text.input.PasswordVisualTransformation import androidx.compose.ui.text.input.PasswordVisualTransformation
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp import androidx.compose.ui.unit.sp
import sae.android.sae_2a.R
@Composable @Composable
fun LoginScreen(onLoginClicked: (String, String) -> Unit) { fun LoginScreen(onLoginClicked: (String, String) -> Unit) {
var username by remember { mutableStateOf("") } var username by remember { mutableStateOf("") }
var password by remember { mutableStateOf("") } var password by remember { mutableStateOf("") }
val context = LocalContext.current
Column( Column(
modifier = Modifier modifier = Modifier
.fillMaxSize(). fillMaxWidth() .fillMaxHeight().background(Color(157,134,146)), .fillMaxSize()
.fillMaxWidth()
.fillMaxHeight()
.background(Color(157, 134, 146)),
horizontalAlignment = Alignment.CenterHorizontally, horizontalAlignment = Alignment.CenterHorizontally,
verticalArrangement = Arrangement.Center verticalArrangement = Arrangement.Center
) { ) {
@ -50,15 +54,17 @@ fun LoginScreen(onLoginClicked: (String, String) -> Unit) {
onValueChange = { password = it }, onValueChange = { password = it },
label = { Text("Password") }, label = { Text("Password") },
modifier = Modifier modifier = Modifier
.padding(bottom = 16.dp), .padding(bottom = 26.dp),
visualTransformation = PasswordVisualTransformation() visualTransformation = PasswordVisualTransformation()
) )
Button( Button(
onClick = { onLoginClicked(username, password) }, onClick = { onLoginClicked(username, password) },
modifier = Modifier modifier = Modifier
.width(300.dp)
.height(50.dp)
) { ) {
Text("Login") Text(stringResource(id = R.string.logIn), fontSize = 20.sp,)
} }
} }
} }

@ -1,13 +1,101 @@
package sae.android.sae_2a.view package sae.android.sae_2a.view
import androidx.compose.foundation.Image
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.foundation.layout.width
import androidx.compose.foundation.layout.wrapContentHeight
import androidx.compose.foundation.layout.wrapContentWidth
import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.foundation.lazy.items
import androidx.compose.material3.Button
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.modifier.modifierLocalConsumer
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import sae.android.sae_2a.R
@Preview
@Composable @Composable
fun profileScreen() { fun profileScreen() {
val nom = "testNom"
val prenom = "testPrenom"
val pseudo = "testPseudo"
Column( modifier = Modifier
.background(color = Color.Gray)
.wrapContentWidth(align = Alignment.Start)) {
Image(
painter = painterResource(id = R.drawable.noprofilepicture),
contentDescription = "Description de l'image",
modifier = Modifier
.wrapContentWidth(align = Alignment.CenterHorizontally)
.width(800.dp)
.padding(top = 40.dp, bottom = 10.dp)
.size(width = 200.dp, height = 200.dp)
)
Text(text = stringResource(id = R.string.profilePicture), color = Color.White, fontSize = 30.sp, fontWeight = FontWeight(1000) , modifier = Modifier
.padding(bottom = 15.dp)
.wrapContentHeight(align = Alignment.Top)
.wrapContentWidth(align = Alignment.CenterHorizontally)
.align(alignment = Alignment.CenterHorizontally)
)
Button( onClick = { }, modifier = Modifier
.padding(3.dp)
.width(500.dp)
.height(80.dp)) {
Row(
modifier = Modifier.padding(5.dp),
horizontalArrangement = Arrangement.spacedBy(18.dp)
){
Image(painter = painterResource(id = R.drawable.infoaccount), contentDescription = "home",
)
Text(text = stringResource(id = R.string.home), fontSize = 20.sp)
}
}
Button( onClick = { }, modifier = Modifier
.padding(3.dp)
.width(500.dp)
.height(80.dp)
.align(alignment = Alignment.CenterHorizontally)) {
Text(text = stringResource(id = R.string.accountDetails), fontSize = 20.sp)
}
Button( onClick = { }, modifier = Modifier
.padding(3.dp)
.width(500.dp)
.height(80.dp)
.align(alignment = Alignment.CenterHorizontally)) {
Text(text = stringResource(id = R.string.changepswd), fontSize = 20.sp)
}
Button( onClick = { }, modifier = Modifier
.padding(3.dp)
.width(500.dp)
.height(80.dp)
.align(alignment = Alignment.CenterHorizontally)) {
Text(text = stringResource(id = R.string.logOut), fontSize = 20.sp)
}
}
} }

@ -1,11 +1,16 @@
<resources> <resources>
<string name="app_name">SAE_2A</string> <string name="app_name" translatable="false">SAE_2A</string>
<string name="name">Name</string> <string name="name">Name</string>
<string name="surname">Surname</string> <string name="surname">Surname</string>
<string name="logIn">Log In</string> <string name="logIn">Log In</string>
<string name="logOut">Log Out</string> <string name="logOut">Log Out</string>
<string name="signIn">Sign In</string>
<string name="password">Password</string> <string name="password">Password</string>
<string name="voc_image_description">Picture representing vocabulary</string> <string name="voc_image_description">Picture representing vocabulary</string>
<string name="created_by">Created by</string> <string name="created_by">Created by</string>
<string name="unknown">Unknown</string> <string name="unknown">Unknown</string>
<string name="profilePicture">Profile Picture</string>
<string name="home">Home</string>
<string name="accountDetails">Account Details</string>
<string name="changepswd">Change Password</string>
</resources> </resources>
Loading…
Cancel
Save