Сделано расписание

This commit is contained in:
2023-04-05 01:04:05 +03:00
parent 5fd497f70e
commit de283fe381
5 changed files with 95 additions and 5 deletions
@@ -49,9 +49,7 @@ fun BaseHomeWorkCard(
.defaultMinSize(300.dp)
.padding(5.dp)
){
Column(
verticalArrangement = Arrangement.spacedBy(0.dp)
) {
Column {
Row(
horizontalArrangement = Arrangement.SpaceBetween,
verticalAlignment = Alignment.CenterVertically,
@@ -4,6 +4,10 @@ import androidx.compose.animation.ExperimentalAnimationApi
import androidx.compose.foundation.BorderStroke
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.*
import androidx.compose.foundation.lazy.grid.GridCells
import androidx.compose.foundation.lazy.grid.LazyHorizontalGrid
import androidx.compose.foundation.lazy.grid.LazyVerticalGrid
import androidx.compose.foundation.lazy.grid.items
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.foundation.verticalScroll
@@ -15,15 +19,19 @@ import androidx.compose.ui.graphics.Color
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import com.google.accompanist.navigation.animation.rememberAnimatedNavController
import com.kizitonwose.calendar.core.daysOfWeek
import ru.megboyzz.dnevnik.screens.ui.*
import ru.megboyzz.dnevnik.screens.ui.calendar.NiceCalendar
import ru.megboyzz.dnevnik.screens.ui.piechart.PieChart
import ru.megboyzz.dnevnik.screens.ui.piechart.PieChartCard
import ru.megboyzz.dnevnik.screens.ui.piechart.PieChartData
import ru.megboyzz.dnevnik.screens.ui.schedule.BaseScheduleCard
import ru.megboyzz.dnevnik.screens.ui.schedule.BaseScheduleShield
import ru.megboyzz.dnevnik.ui.theme.mainBlue
import ru.megboyzz.dnevnik.ui.theme.white
import java.time.LocalDate
import java.time.YearMonth
import java.time.format.TextStyle
import java.util.*
//Файл со всеми превьюшками
@@ -301,4 +309,31 @@ fun ScheduleShieldPrev() {
classNumber = "3.13",
nextLessonName = "Обществознание"
)
}
@Preview
@Composable
fun ScheduleCardPrev() {
val daysOfWeek = daysOfWeek().dropLast(1)
LazyVerticalGrid(
columns = GridCells.Fixed(2),
verticalArrangement = Arrangement.spacedBy(10.dp),
horizontalArrangement = Arrangement.spacedBy(10.dp)
){
items(daysOfWeek){
BaseScheduleCard(
dayTitle = it.getDisplayName(TextStyle.FULL, Locale.getDefault()),
subjectNames = listOf(
"Литература",
"Алгебра",
"Геометрия",
"Алгебра и начала математического анализа",
"Физика",
"Астрономия",
)
)
}
}
}
@@ -0,0 +1,52 @@
package ru.megboyzz.dnevnik.screens.ui.schedule
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.material.Divider
import androidx.compose.material.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.unit.dp
import ru.megboyzz.dnevnik.screens.ui.BaseCard
import ru.megboyzz.dnevnik.ui.theme.H2
import ru.megboyzz.dnevnik.ui.theme.mainBlue
import ru.megboyzz.dnevnik.ui.theme.textSchedule
@Composable
fun BaseScheduleCard(
dayTitle: String,
subjectNames: List<String>
) {
BaseCard {
Column(
modifier = Modifier.padding(10.dp).padding(bottom = 15.dp),
verticalArrangement = Arrangement.spacedBy(10.dp)
) {
Column(
verticalArrangement = Arrangement.spacedBy(5.dp),
horizontalAlignment = Alignment.CenterHorizontally,
modifier = Modifier.fillMaxWidth()
) {
Text(
text = dayTitle,
style = H2,
color = mainBlue,
)
Divider(
color = mainBlue,
thickness = 1.dp,
)
}
for(i in subjectNames.indices){
Text(
text = "${i+1}. ${subjectNames[i]}",
style = textSchedule
)
}
}
}
}
@@ -1,6 +1,5 @@
package ru.megboyzz.dnevnik.screens.ui
package ru.megboyzz.dnevnik.screens.ui.schedule
import androidx.compose.foundation.Image
import androidx.compose.foundation.layout.*
import androidx.compose.material.Icon
import androidx.compose.material.Text
@@ -12,6 +11,7 @@ import androidx.compose.ui.unit.dp
import ru.megboyzz.dnevnik.AsPainter
import ru.megboyzz.dnevnik.AsString
import ru.megboyzz.dnevnik.R
import ru.megboyzz.dnevnik.screens.ui.BaseCard
import ru.megboyzz.dnevnik.ui.theme.H2
import ru.megboyzz.dnevnik.ui.theme.MainText
import ru.megboyzz.dnevnik.ui.theme.dark
@@ -61,4 +61,9 @@ val Big = TextStyle(
val Mini = TextStyle(
fontSize = 10.sp,
fontWeight = FontWeight.Bold,
)
val textSchedule = TextStyle(
fontSize = 13.sp,
fontWeight = FontWeight.SemiBold,
)