diff --git a/app/src/main/java/com/example/labwork/button_navigation/Screens.kt b/app/src/main/java/com/example/labwork/button_navigation/Screens.kt index e15d8df..2d20773 100644 --- a/app/src/main/java/com/example/labwork/button_navigation/Screens.kt +++ b/app/src/main/java/com/example/labwork/button_navigation/Screens.kt @@ -1,41 +1,18 @@ package com.example.labwork.button_navigation -import androidx.compose.foundation.Image -import androidx.compose.foundation.background -import androidx.compose.foundation.layout.Arrangement -import androidx.compose.foundation.layout.Box -import androidx.compose.foundation.layout.Column -import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.fillMaxHeight import androidx.compose.foundation.layout.fillMaxSize -import androidx.compose.foundation.layout.offset import androidx.compose.foundation.layout.padding -import androidx.compose.foundation.layout.requiredHeight -import androidx.compose.foundation.layout.requiredSize -import androidx.compose.foundation.layout.requiredWidth import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.lazy.LazyColumn import androidx.compose.foundation.lazy.itemsIndexed -import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material.Text import androidx.compose.runtime.Composable -import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier -import androidx.compose.ui.draw.clip -import androidx.compose.ui.graphics.Color -import androidx.compose.ui.graphics.ColorFilter -import androidx.compose.ui.res.painterResource -import androidx.compose.ui.text.TextStyle -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.em -import androidx.compose.ui.unit.sp -import com.example.labwork.R -import com.example.labwork.pages.ItemProduct import com.example.labwork.pages.ListInfo import com.example.labwork.pages.ListProduct -import com.example.labwork.pages.getItemProducts +import com.example.labwork.models.getItemProducts @Composable fun ScreenInfo() { diff --git a/app/src/main/java/com/example/labwork/pages/ItemProduct.kt b/app/src/main/java/com/example/labwork/models/ItemProduct.kt similarity index 98% rename from app/src/main/java/com/example/labwork/pages/ItemProduct.kt rename to app/src/main/java/com/example/labwork/models/ItemProduct.kt index 7cc0baa..0a9b902 100644 --- a/app/src/main/java/com/example/labwork/pages/ItemProduct.kt +++ b/app/src/main/java/com/example/labwork/models/ItemProduct.kt @@ -1,4 +1,4 @@ -package com.example.labwork.pages +package com.example.labwork.models import com.example.labwork.R import java.io.Serializable diff --git a/app/src/main/java/com/example/labwork/pages/ListAuthorization.kt b/app/src/main/java/com/example/labwork/pages/ListAuthorization.kt new file mode 100644 index 0000000..c91347f --- /dev/null +++ b/app/src/main/java/com/example/labwork/pages/ListAuthorization.kt @@ -0,0 +1,4 @@ +package com.example.labwork.pages + +class ListAuthorization { +} \ No newline at end of file diff --git a/app/src/main/java/com/example/labwork/pages/ListInfo.kt b/app/src/main/java/com/example/labwork/pages/ListInfo.kt index f71ca1a..6387d72 100644 --- a/app/src/main/java/com/example/labwork/pages/ListInfo.kt +++ b/app/src/main/java/com/example/labwork/pages/ListInfo.kt @@ -2,15 +2,16 @@ package com.example.labwork.pages import androidx.compose.foundation.Image import androidx.compose.foundation.background -import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.fillMaxSize -import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size +import androidx.compose.foundation.lazy.LazyColumn +import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material.Tab import androidx.compose.material.TabRow import androidx.compose.material.TabRowDefaults @@ -24,14 +25,16 @@ import androidx.compose.runtime.remember import androidx.compose.ui.Alignment import androidx.compose.ui.Alignment.Companion.CenterHorizontally import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip import androidx.compose.ui.draw.shadow import androidx.compose.ui.graphics.Color +import androidx.compose.ui.layout.ContentScale import androidx.compose.ui.res.painterResource import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import com.example.labwork.R -import com.example.labwork.ui.theme.DarkBluePolitech import com.example.labwork.ui.theme.LightBluePolitech @@ -44,15 +47,19 @@ fun ListInfo() { .padding(16.dp) .align(Alignment.TopCenter) ) { - Image( - painter = painterResource(id = R.drawable.logo_ulstu), - contentDescription = "Menu Image", + Box( modifier = Modifier .size(200.dp) .align(CenterHorizontally) - .shadow(16.dp) - .background(color = Color.Transparent) - ) + .clip(shape = RoundedCornerShape(8.dp)) + .shadow(16.dp, shape = RoundedCornerShape(8.dp)) + ) { + Image( + painter = painterResource(id = R.drawable.logo_ulstu), + contentDescription = "Menu Image", + Modifier.fillMaxSize() + ) + } Spacer(modifier = Modifier.height(16.dp)) TabRow( selectedTabIndex = selectedTab, @@ -73,8 +80,9 @@ fun ListInfo() { onClick = { selectedTab = 0 } ) { Text( - text = "Tab 1", - modifier = Modifier.padding(8.dp) + text = "Университет", + modifier = Modifier.padding(8.dp), + textAlign = TextAlign.Center, ) } Tab( @@ -82,8 +90,9 @@ fun ListInfo() { onClick = { selectedTab = 1 } ) { Text( - text = "Tab 2", - modifier = Modifier.padding(8.dp) + text = "Библиотека", + modifier = Modifier.padding(8.dp), + textAlign = TextAlign.Center, ) } Tab( @@ -91,28 +100,236 @@ fun ListInfo() { onClick = { selectedTab = 2 } ) { Text( - text = "Tab 3", - modifier = Modifier.padding(8.dp) + text = "Контакты разработчиков", + modifier = Modifier + .padding(8.dp), + textAlign = TextAlign.Center, ) } } Spacer(modifier = Modifier.height(16.dp)) when (selectedTab) { - 0 -> TabContent("Tab 1 Content") - 1 -> TabContent("Tab 2 Content") - 2 -> TabContent("Tab 3 Content") + 0 -> InfoUniver() + 1 -> InfoBiblio() + 2 -> InfoProgrammer() } } } } @Composable -fun TabContent(content: String) { - Column(modifier = Modifier.fillMaxWidth()) { - Text( - text = content, - modifier = Modifier.padding(16.dp), - fontSize = 18.sp - ) +fun InfoUniver() { + LazyColumn( + modifier = Modifier.fillMaxSize().padding(bottom = 65.dp), + contentPadding = PaddingValues(16.dp) + ) { + item { + Text( + text = "Основные сведения", + fontSize = 24.sp, + fontWeight = FontWeight.Bold + ) + Spacer(modifier = Modifier.height(16.dp)) + + Text( + "Полное наименование образовательной организации", + fontSize = 16.sp, + fontWeight = FontWeight.Bold + ) + Text( + text = "Федеральное государственное бюджетное образовательное учреждение высшего образования \"Ульяновский государственный технический университет\"" + ) + Spacer(modifier = Modifier.height(8.dp)) + + Text( + "Сокращенное (при наличии) наименование образовательной организации", + fontSize = 16.sp, + fontWeight = FontWeight.Bold + ) + Text(text = "УлГТУ, Ульяновский государственный технический университет") + Spacer(modifier = Modifier.height(8.dp)) + + Text( + "Дата создания образовательной организации", + fontSize = 16.sp, + fontWeight = FontWeight.Bold + ) + Text(text = "18.09.1957") + Spacer(modifier = Modifier.height(8.dp)) + + Text( + "Адрес местонахождения образовательной организации", + fontSize = 16.sp, + fontWeight = FontWeight.Bold + ) + Text(text = "432027, Ульяновская область, г. Ульяновск, улица Северный Венец, дом 32") + Spacer(modifier = Modifier.height(8.dp)) + + Text( + "Филиалы образовательной организации", + fontSize = 16.sp, + fontWeight = FontWeight.Bold + ) + Text(text = "Имеются") + Spacer(modifier = Modifier.height(8.dp)) + + Text( + "Представительства образовательной организации", + fontSize = 16.sp, + fontWeight = FontWeight.Bold + ) + Text(text = "Имеются") + Spacer(modifier = Modifier.height(8.dp)) + + Text( + "Режим, график работы", + fontSize = 16.sp, + fontWeight = FontWeight.Bold + ) + Text(text = "Понедельник-четверг - 8.30 - 17.22") + Text(text = "Пятница- 8.30 - 16.22") + Text(text = "Перерыв 13.00 до 13.40") + Spacer(modifier = Modifier.height(8.dp)) + + Text( + "Контактные телефоны", + fontSize = 16.sp, + fontWeight = FontWeight.Bold + ) + Text(text = "8(8422)43-02-37") + Spacer(modifier = Modifier.height(8.dp)) + + Text( + "Адреса электронной почты", + fontSize = 16.sp, + fontWeight = FontWeight.Bold + ) + Text(text = "rector@ulstu.ru") + } + } +} + +@Composable +fun InfoBiblio() { + LazyColumn( + modifier = Modifier.fillMaxSize().padding(bottom = 65.dp), + contentPadding = PaddingValues(16.dp) + ) { + item { + Text( + text = "Основные сведения", + fontSize = 24.sp, + fontWeight = FontWeight.Bold + ) + Spacer(modifier = Modifier.height(16.dp)) + + Text("Технический университет подобным сокровищем обладает!",modifier = Modifier.padding(bottom = 16.dp)) + + Text( + text = "Наша Научная библиотека соответствует всем современным требованиям технического вуза. Постоянно пополняющийся библиотечный фонд составляет более 1100 тыс. единиц хранения, формируется по специальностям (с учетом всех направлений учебного и научного процессов университета) изданиями, отвечающими требованиям программ высшей школы. В фонде имеются зарубежные издания, диссертации, авторефераты, документы на электронных носителях. Пользователям предоставляется доступ к электронным ресурсам удалённого доступа, входящим в состав электронно-библиотечной системы «ЭльбруС» УлГТУ." + ,modifier = Modifier.padding(bottom = 16.dp) + ) + + Text( + text = "К услугам читателей: зал каталогов, aвонементы научной и учебной литературы, общий читальный зал, отдел экономической и иностранной литературы. Выдача комплектов учебников первокурсникам, зал для аспирантов и преподавателей, зал периодических изданий, читальный зал машиностроительного факультета, читальный зал электронных ресурсов, отдел художественной литературы, научно-библиографический отдел, библиотека Института авиационных технологий и управления, Барышского колледжа — филиала УлГТУ." + ,modifier = Modifier.padding(bottom = 16.dp) + ) + + Text( + text = "Абонемент учебной литературы обеспечивает студентов и лицеистов учебниками и учебными пособиями в соответствии с учебными программами. Научные, научно-популярные и справочные издания для подготовки рефератов, докладов, курсовых и дипломных работ, а также издания по орган. Располагает богатым фондом справочных и информационных изданий. В отделе художественной литературы собраны книги на любой вкус: есть классическая русская и зарубежная, современная отечественная и иностранная литература; тематика книг - от фантастики, детективов, приключений и женских романов до серьезной, философской литературы. В отделе иностранной литературы хранятся учебные и научные издания на английском, немецком и французском языках. Читальный зал электронных ресурсов (медиатека) НБ УлГТУ располагает фондом CD, DVD по различным отраслям знаний. На территории Научной библиотеки размещены точки доступа в Интернет по технологии Wi-Fi. Право доступа в беспроводную локальной сети предоставляется всем желающим студентам и сотрудникам университета, имеющим учетную запись пользователя корпоративной сети университета." + ,modifier = Modifier.padding(bottom = 16.dp) + ) + + Text( + text = "События библиотечной жизни оперативно отражаются на нашем сайте (http://lib.ulstu.ru), сайт также обеспечивает круглосуточный доступ пользователей к каталогам и базам данных библиотеки." + ,modifier = Modifier.padding(bottom = 16.dp) + ) + + Text( + text = "Научная библиотека ведёт активную работу в помощь духовно-нравственному, патриотическому и эстетическому воспитанию своих читателей, используя различные формы и методы библиотечного обслуживания, такие как: книжные выставки, тематические обзоры, беседы, творческие встречи с интересными людьми, конкурсы и викторины." + ,modifier = Modifier.padding(bottom = 16.dp) + ) + + Spacer(modifier = Modifier.height(16.dp)) + + Text("Адреса электронной почты", + fontSize = 16.sp, + fontWeight = FontWeight.Bold) + Text(text = "rector@ulstu.ru") + } + } +} + +@Composable +fun InfoProgrammer() { + LazyColumn( + modifier = Modifier.fillMaxSize().padding(bottom = 65.dp), + contentPadding = PaddingValues(16.dp) + ) { + item { + Text( + text = "Основные сведения", + fontSize = 24.sp, + fontWeight = FontWeight.Bold + ) + + Box( + modifier = Modifier + .size(200.dp) + .clip(shape = RoundedCornerShape(8.dp)) + ) { + Image( + painter = painterResource(id = R.drawable.kashinmaksim), + contentDescription = "Maxim", + contentScale = ContentScale.Crop, + modifier = Modifier.fillMaxSize() + ) + } + + Spacer(modifier = Modifier.height(16.dp)) + + Text("Подробная информация", + fontSize = 16.sp, + fontWeight = FontWeight.Bold) + Text( + text = "Кашин Максим Игоревич" + ) + + Text("Личная информация", + fontSize = 16.sp, + fontWeight = FontWeight.Bold) + Text( + text = "Родной город: Сыктывкар" + ) + Text( + text = "Языки: Русский" + ) + Text( + text = "День рождения: 23 декабря" + ) + + Text("Место работы", + fontSize = 16.sp, + fontWeight = FontWeight.Bold) + Text( + text = "ДЦТ ЛАОП" + ) + + Text("Образование", + fontSize = 16.sp, + fontWeight = FontWeight.Bold) + Text( + text = "Вуз: УлГТУ" + ) + Text( + text = "Факультет: Факультет информационных систем и технологий" + ) + Text( + text = "Специальность: Программная инженерия" + ) + Text( + text = "Школа: Школа № 7 Димитровград до 2021 г." + ) + } } } \ No newline at end of file diff --git a/app/src/main/java/com/example/labwork/pages/ListProduct.kt b/app/src/main/java/com/example/labwork/pages/ListProduct.kt index a030dd4..2421bca 100644 --- a/app/src/main/java/com/example/labwork/pages/ListProduct.kt +++ b/app/src/main/java/com/example/labwork/pages/ListProduct.kt @@ -14,35 +14,28 @@ import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size -import androidx.compose.foundation.shape.CircleShape import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material.Button import androidx.compose.material.ButtonDefaults import androidx.compose.material.Card import androidx.compose.material.Text import androidx.compose.runtime.Composable -import androidx.compose.runtime.mutableStateListOf import androidx.compose.runtime.remember import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier -import androidx.compose.ui.draw.alpha -import androidx.compose.ui.draw.clip import androidx.compose.ui.draw.scale import androidx.compose.ui.draw.shadow import androidx.compose.ui.graphics.Color import androidx.compose.ui.layout.ContentScale import androidx.compose.ui.res.painterResource -import androidx.compose.ui.semantics.Role.Companion.Button import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.style.TextAlign -import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp -import com.example.labwork.R -import com.example.labwork.ui.theme.DarkBluePolitech +import com.example.labwork.models.ItemProduct import com.example.labwork.ui.theme.LightBluePolitech @@ -90,7 +83,7 @@ fun ListProduct(item: ItemProduct) { } Column { Text(text = item.name, - color = DarkBluePolitech, + color = Color.Black, fontSize = if (isFullAbout) 18.sp else 24.sp, fontWeight = FontWeight.Bold, textAlign = TextAlign.Center, @@ -103,7 +96,7 @@ fun ListProduct(item: ItemProduct) { modifier = Modifier.scale(scale) ) { Text( - color = DarkBluePolitech, + color = Color.Black, text = item.about, maxLines = 10, fontSize = 14.sp, diff --git a/app/src/main/res/drawable-nodpi/kashinmaksim.jpg b/app/src/main/res/drawable-nodpi/kashinmaksim.jpg new file mode 100644 index 0000000..0d189a7 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/kashinmaksim.jpg differ