trying add coin

This commit is contained in:
DimazzP 2025-02-08 17:54:35 +07:00
parent 3824e79c2a
commit afb61f8cac
4 changed files with 28 additions and 22 deletions

View File

@ -25,13 +25,17 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip import androidx.compose.ui.draw.clip
import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.Color
import androidx.compose.ui.layout.ContentScale import androidx.compose.ui.layout.ContentScale
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.unit.dp import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp import androidx.compose.ui.unit.sp
import androidx.constraintlayout.compose.ConstraintLayout import androidx.constraintlayout.compose.ConstraintLayout
import androidx.lifecycle.viewmodel.compose.viewModel import androidx.lifecycle.viewmodel.compose.viewModel
import androidx.navigation.NavController import androidx.navigation.NavController
import com.example.lexilearn.R
import com.example.lexilearn.data.model.MaterialDataModel import com.example.lexilearn.data.model.MaterialDataModel
import com.example.lexilearn.ui.components.ButtonNext
import com.example.lexilearn.ui.components.FirebaseImage import com.example.lexilearn.ui.components.FirebaseImage
import com.example.lexilearn.ui.components.GradientQuiz import com.example.lexilearn.ui.components.GradientQuiz
import com.example.lexilearn.ui.components.HorizontalLine import com.example.lexilearn.ui.components.HorizontalLine
@ -67,7 +71,7 @@ fun DetailMaterialScreen(navController: NavController, materialListData: List<Ma
Spacer(modifier = Modifier.height(70.dp)) Spacer(modifier = Modifier.height(70.dp))
HorizontalLine() HorizontalLine()
LazyColumn( LazyColumn(
modifier = Modifier.fillMaxSize(), modifier = Modifier.fillMaxWidth(),
contentPadding = PaddingValues(16.dp) contentPadding = PaddingValues(16.dp)
) { ) {
items(materialList) { dataMat -> items(materialList) { dataMat ->
@ -108,7 +112,7 @@ fun DetailMaterialScreen(navController: NavController, materialListData: List<Ma
modifier = Modifier.matchParentSize() modifier = Modifier.matchParentSize()
) // 🔥 Pastikan gambar mengisi Box ) // 🔥 Pastikan gambar mengisi Box
} }
Spacer(modifier = Modifier.height(20.dp)) Spacer(modifier = Modifier.height(10.dp))
Text( Text(
text = "${dataMat.enName}", text = "${dataMat.enName}",
color = cAccent, color = cAccent,
@ -131,7 +135,7 @@ fun DetailMaterialScreen(navController: NavController, materialListData: List<Ma
) )
} }
} }
Spacer(modifier = Modifier.height(20.dp)) Spacer(modifier = Modifier.height(10.dp))
} }
IconButton( IconButton(
onClick = { onClick = {
@ -153,6 +157,16 @@ fun DetailMaterialScreen(navController: NavController, materialListData: List<Ma
} }
} }
} }
ButtonNext(
onclick = {
navController.navigate("spell")
},
text = "Kerjakan Kuis",
painter = painterResource(id = R.drawable.ic_next),
modifier = Modifier
.padding(horizontal = 50.dp)
.fillMaxWidth()
)
} }
} }
} }

View File

@ -304,7 +304,7 @@ fun HomeScreen(navController: NavController) {
) )
} }
} }
ButtonHome(onClick = { }, ButtonHome(onClick = { navController.navigate("read") },
color = Color(0xffedb92f), color = Color(0xffedb92f),
modifier = Modifier modifier = Modifier
.constrainAs(newsRef) { .constrainAs(newsRef) {

View File

@ -1,12 +1,10 @@
package com.example.lexilearn.ui.views.pNavMaterial package com.example.lexilearn.ui.views.pNavMaterial
import android.graphics.Shader
import androidx.compose.foundation.background import androidx.compose.foundation.background
import androidx.compose.foundation.border import androidx.compose.foundation.border
import androidx.compose.foundation.clickable import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.* import androidx.compose.foundation.layout.*
import androidx.compose.foundation.lazy.LazyColumn import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.foundation.lazy.items
import androidx.compose.foundation.lazy.itemsIndexed import androidx.compose.foundation.lazy.itemsIndexed
import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material.icons.Icons import androidx.compose.material.icons.Icons
@ -21,10 +19,8 @@ import androidx.compose.runtime.getValue
import androidx.compose.runtime.livedata.observeAsState import androidx.compose.runtime.livedata.observeAsState
import androidx.compose.ui.Alignment import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.blur
import androidx.compose.ui.draw.clip import androidx.compose.ui.draw.clip
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.RenderEffect
import androidx.compose.ui.graphics.graphicsLayer
import androidx.compose.ui.layout.ContentScale import androidx.compose.ui.layout.ContentScale
import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
@ -73,9 +69,10 @@ fun NavMaterialScreen(navController: NavController, materialId: String) {
) { ) {
itemsIndexed(materialList) { index, chunk -> itemsIndexed(materialList) { index, chunk ->
ConstraintLayout(modifier = Modifier.fillMaxWidth()) { ConstraintLayout(modifier = Modifier.fillMaxWidth()) {
val (space, boxItem, centerLine, lockIcon, cardIcon) = createRefs() val (space, boxItem, centerLine, lockIcon) = createRefs()
Box(modifier = Modifier Box(modifier = Modifier
.background(color = cwhite, shape = RoundedCornerShape(12.dp)) .background(color = cwhite, shape = RoundedCornerShape(12.dp))
.blur(if ((sizeUnlock ?: 0) < index) 16.dp else 0.dp)
.constrainAs(boxItem) { .constrainAs(boxItem) {
start.linkTo(parent.start) start.linkTo(parent.start)
top.linkTo(parent.top) top.linkTo(parent.top)
@ -184,23 +181,18 @@ fun NavMaterialScreen(navController: NavController, materialId: String) {
start.linkTo(boxItem.start) start.linkTo(boxItem.start)
}) })
if (index > (sizeUnlock ?: 0)) { if (index > (sizeUnlock ?: 0)) {
Box( Icon(
imageVector = Icons.Filled.Lock,
contentDescription = "Lock Icon",
modifier = Modifier modifier = Modifier
.constrainAs(cardIcon) { .size(60.dp)
.constrainAs(lockIcon) {
start.linkTo(parent.start) start.linkTo(parent.start)
top.linkTo(parent.top) top.linkTo(parent.top)
bottom.linkTo(parent.bottom) bottom.linkTo(parent.bottom)
end.linkTo(parent.end) end.linkTo(parent.end)
} }
.background(Color.White.copy(alpha = 0.5f)) // Transparan blur effect )
) {
Icon(
imageVector = Icons.Filled.Lock,
contentDescription = "Lock Icon",
modifier = Modifier.size(60.dp)
)
}
} }
} }
} }

View File

@ -1,5 +1,5 @@
<resources> <resources>
<string name="app_name">LexiLearn</string> <string name="app_name">EDUL</string>
<string name="title_activity_login">LoginActivity</string> <string name="title_activity_login">LoginActivity</string>
<string name="title_activity_login_screen">LoginScreen</string> <string name="title_activity_login_screen">LoginScreen</string>