[ADD] Lancer kahoot depuis home fonctionne

RepositoryAndroid
Renaud BEURET 1 year ago
parent a093d38820
commit 5bf379ad61

@ -4,9 +4,11 @@ import android.content.Context
import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.lifecycle.viewmodel.compose.viewModel
import androidx.navigation.compose.NavHost import androidx.navigation.compose.NavHost
import androidx.navigation.compose.composable import androidx.navigation.compose.composable
import androidx.navigation.compose.rememberNavController import androidx.navigation.compose.rememberNavController
import fr.iut.sciencequest.ViewModels.KahootViewModel
import fr.iut.sciencequest.ViewModels.PenduViewModel import fr.iut.sciencequest.ViewModels.PenduViewModel
import fr.iut.sciencequest.ViewModels.ScientifiquesDecouvertsVM import fr.iut.sciencequest.ViewModels.ScientifiquesDecouvertsVM
import fr.iut.sciencequest.stub.StubQuestionWithReponses import fr.iut.sciencequest.stub.StubQuestionWithReponses
@ -19,12 +21,12 @@ import fr.iut.sciencequest.view.scientifiques.scientifiqueListeScreen
@Composable @Composable
fun NavHost() { fun NavHost(kahotVM: KahootViewModel = viewModel()) {
val navController = rememberNavController() val navController = rememberNavController()
NavHost( NavHost(
modifier = Modifier.fillMaxSize(), modifier = Modifier.fillMaxSize(),
navController = navController, navController = navController,
startDestination = "kahoot" startDestination = "home"
) { ) {
composable(route = "home") { composable(route = "home") {
HomeScreen( HomeScreen(
@ -38,6 +40,7 @@ fun NavHost() {
navController.navigate("pendu") navController.navigate("pendu")
}, },
goToKahoot = { goToKahoot = {
kahotVM.lancerPartie()
navController.navigate("kahoot") navController.navigate("kahoot")
} }
) )
@ -82,7 +85,8 @@ fun NavHost() {
}, },
goToHome = { goToHome = {
navController.navigate("home") navController.navigate("home")
}) },
viewModel = kahotVM)
} }
composable(route = "listeScientifiques") { composable(route = "listeScientifiques") {

@ -14,9 +14,14 @@ import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.tooling.preview.Preview 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.lifecycle.viewmodel.compose.viewModel
import fr.iut.sciencequest.ViewModels.KahootViewModel
@Composable @Composable
fun HomeScreen(goToHome: () -> Unit, goToAccount: () -> Unit, goToPendu: () -> Unit, goToKahoot: () -> Unit) { fun HomeScreen(goToHome: () -> Unit,
goToAccount: () -> Unit,
goToPendu: () -> Unit,
goToKahoot: () -> Unit) {
Column (modifier = Modifier.fillMaxWidth()){ Column (modifier = Modifier.fillMaxWidth()){
TopBar(goToAccount, goToHome) TopBar(goToAccount, goToHome)
MainContent(goToPendu, goToKahoot) MainContent(goToPendu, goToKahoot)

@ -32,7 +32,6 @@ fun KahootScreen(viewModel: KahootViewModel = viewModel(),
goToAccount: () -> Unit, goToAccount: () -> Unit,
goToHome: () -> Unit) { goToHome: () -> Unit) {
val state = viewModel.uiState.collectAsState() val state = viewModel.uiState.collectAsState()
viewModel.lancerPartie()
Column(modifier = Modifier.fillMaxWidth()) { Column(modifier = Modifier.fillMaxWidth()) {
TopBar(goToAccount, goToHome, stringResource(id = R.string.kahoot)) TopBar(goToAccount, goToHome, stringResource(id = R.string.kahoot))
KahootPlayer(state.value.question) { KahootPlayer(state.value.question) {

Loading…
Cancel
Save