diff --git a/app/src/main/java/com/example/android_programming/HomeScreen/BrandScrollBar/ItemFilterByBrand.kt b/app/src/main/java/com/example/android_programming/HomeScreen/BrandScrollBar/ItemFilterByBrand.kt new file mode 100644 index 0000000..e8e5efd --- /dev/null +++ b/app/src/main/java/com/example/android_programming/HomeScreen/BrandScrollBar/ItemFilterByBrand.kt @@ -0,0 +1,5 @@ +package com.example.android_programming.HomeScreen.BrandScrollBar + +data class ItemFilterByBrand( + val imageId: Int, +) diff --git a/app/src/main/java/com/example/android_programming/HomeScreen/ItemRow.kt b/app/src/main/java/com/example/android_programming/HomeScreen/BrandScrollBar/ItemRow.kt similarity index 95% rename from app/src/main/java/com/example/android_programming/HomeScreen/ItemRow.kt rename to app/src/main/java/com/example/android_programming/HomeScreen/BrandScrollBar/ItemRow.kt index 50225df..a7327a9 100644 --- a/app/src/main/java/com/example/android_programming/HomeScreen/ItemRow.kt +++ b/app/src/main/java/com/example/android_programming/HomeScreen/BrandScrollBar/ItemRow.kt @@ -1,4 +1,4 @@ -package com.example.android_programming.HomeScreen +package com.example.android_programming.HomeScreen.BrandScrollBar import androidx.compose.foundation.Image import androidx.compose.foundation.background diff --git a/app/src/main/java/com/example/android_programming/HomeScreen/HomeScreen.kt b/app/src/main/java/com/example/android_programming/HomeScreen/HomeScreen.kt index fd7c042..d1a504c 100644 --- a/app/src/main/java/com/example/android_programming/HomeScreen/HomeScreen.kt +++ b/app/src/main/java/com/example/android_programming/HomeScreen/HomeScreen.kt @@ -2,36 +2,26 @@ package com.example.android_programming.HomeScreen 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.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.padding -import androidx.compose.foundation.layout.size import androidx.compose.foundation.lazy.LazyColumn import androidx.compose.foundation.lazy.LazyRow import androidx.compose.foundation.lazy.itemsIndexed -import androidx.compose.foundation.lazy.rememberLazyListState import androidx.compose.foundation.shape.RoundedCornerShape -import androidx.compose.foundation.text.BasicTextField -import androidx.compose.foundation.verticalScroll -import androidx.compose.material.Icon -import androidx.compose.material.icons.Icons -import androidx.compose.material.icons.filled.Search import androidx.compose.runtime.Composable -import androidx.compose.runtime.getValue -import androidx.compose.runtime.mutableStateOf -import androidx.compose.runtime.remember -import androidx.compose.runtime.setValue -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.vector.ImageVector -import androidx.compose.ui.text.TextStyle import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp +import com.example.android_programming.HomeScreen.BrandScrollBar.ItemFilterByBrand +import com.example.android_programming.HomeScreen.BrandScrollBar.ItemRow +import com.example.android_programming.HomeScreen.SearchField.SearchField +import com.example.android_programming.HomeScreen.SneakerRecyclerView.CardSneaker +import com.example.android_programming.SneakerItem import com.example.android_programming.R @Composable diff --git a/app/src/main/java/com/example/android_programming/HomeScreen/ItemFilterByBrand.kt b/app/src/main/java/com/example/android_programming/HomeScreen/ItemFilterByBrand.kt deleted file mode 100644 index 2df3fd1..0000000 --- a/app/src/main/java/com/example/android_programming/HomeScreen/ItemFilterByBrand.kt +++ /dev/null @@ -1,5 +0,0 @@ -package com.example.android_programming.HomeScreen - -data class ItemFilterByBrand( - val imageId: Int, -) diff --git a/app/src/main/java/com/example/android_programming/HomeScreen/SearchField.kt b/app/src/main/java/com/example/android_programming/HomeScreen/SearchField/SearchField.kt similarity index 97% rename from app/src/main/java/com/example/android_programming/HomeScreen/SearchField.kt rename to app/src/main/java/com/example/android_programming/HomeScreen/SearchField/SearchField.kt index 812d9c4..fe52a8c 100644 --- a/app/src/main/java/com/example/android_programming/HomeScreen/SearchField.kt +++ b/app/src/main/java/com/example/android_programming/HomeScreen/SearchField/SearchField.kt @@ -1,4 +1,4 @@ -package com.example.android_programming.HomeScreen; +package com.example.android_programming.HomeScreen.SearchField; import androidx.compose.foundation.background import androidx.compose.foundation.layout.Box diff --git a/app/src/main/java/com/example/android_programming/HomeScreen/CardSneaker.kt b/app/src/main/java/com/example/android_programming/HomeScreen/SneakerRecyclerView/CardSneaker.kt similarity index 93% rename from app/src/main/java/com/example/android_programming/HomeScreen/CardSneaker.kt rename to app/src/main/java/com/example/android_programming/HomeScreen/SneakerRecyclerView/CardSneaker.kt index 7ea563f..097ad1a 100644 --- a/app/src/main/java/com/example/android_programming/HomeScreen/CardSneaker.kt +++ b/app/src/main/java/com/example/android_programming/HomeScreen/SneakerRecyclerView/CardSneaker.kt @@ -1,12 +1,10 @@ -package com.example.android_programming.HomeScreen +package com.example.android_programming.HomeScreen.SneakerRecyclerView 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.fillMaxSize -import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size import androidx.compose.foundation.shape.RoundedCornerShape @@ -23,6 +21,7 @@ import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import com.example.android_programming.R +import com.example.android_programming.SneakerItem @Composable fun CardSneaker(item: SneakerItem) { diff --git a/app/src/main/java/com/example/android_programming/LikeScreen/CardSneaker.kt b/app/src/main/java/com/example/android_programming/LikeScreen/CardSneaker.kt new file mode 100644 index 0000000..00d6781 --- /dev/null +++ b/app/src/main/java/com/example/android_programming/LikeScreen/CardSneaker.kt @@ -0,0 +1,75 @@ +package com.example.android_programming.LikeScreen + +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.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material.Button +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.layout.ContentScale +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import com.example.android_programming.R +import com.example.android_programming.SneakerItem + +@Composable +fun CardSneakerLike(item: SneakerItem) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(10.dp) + .clip(RoundedCornerShape(10.dp)) + .background(Color.LightGray), + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.SpaceBetween + ) { + Image( + painter = painterResource(id = item.imageId), + contentDescription = "image", + contentScale = ContentScale.Crop, + modifier = Modifier + .size(70.dp) + .padding(10.dp) + .clip(RoundedCornerShape(10.dp)) + ) + + Column( + modifier = Modifier + .weight(1f) + .padding(start = 16.dp) + ) { + Text(text = item.name, fontSize = 20.sp) + Text(text = "${item.price} USD", color = Color.Red, fontSize = 16.sp) + } + + // Кнопка для удаления + Button( + onClick = { }, + modifier = Modifier + .size(40.dp) + .padding(10.dp) + ) { + Text(text = "X", fontSize = 16.sp) + } + } +} + + + +@Composable +@Preview +fun CardSneakerLikePreview(){ + CardSneakerLike(SneakerItem(R.drawable.sneaker, "Jordan", 159.99)) +} \ No newline at end of file diff --git a/app/src/main/java/com/example/android_programming/LikeScreen/LikeScreen.kt b/app/src/main/java/com/example/android_programming/LikeScreen/LikeScreen.kt new file mode 100644 index 0000000..717cab3 --- /dev/null +++ b/app/src/main/java/com/example/android_programming/LikeScreen/LikeScreen.kt @@ -0,0 +1,63 @@ +package com.example.android_programming.LikeScreen; + +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.fillMaxSize +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.lazy.LazyColumn +import androidx.compose.foundation.lazy.itemsIndexed +import androidx.compose.material.MaterialTheme +import androidx.compose.material.Text +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.text.font.FontWeight +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import com.example.android_programming.R +import com.example.android_programming.SneakerItem + +@Composable +fun LikeScreen() { + Column( + modifier = Modifier + .fillMaxSize() + .background(Color.White) + ){ + Text( + text = "Favorites", + style = MaterialTheme.typography.h5, + fontWeight = FontWeight.Bold, + modifier = Modifier + .padding(10.dp, 10.dp) + ) + Row { + LazyColumn( + modifier = Modifier + .fillMaxSize() + ) { + itemsIndexed( + listOf( + SneakerItem(R.drawable.sneaker, "Jordan", 159.99), + SneakerItem(R.drawable.sneaker, "Jordan", 159.99), + SneakerItem(R.drawable.sneaker, "Jordan", 159.99), + ) + ){_, item-> + CardSneakerLike(item = item) + + } + } + } + } +} + +@Composable +@Preview +fun LikeScreenPreview(){ + LikeScreen() +} diff --git a/app/src/main/java/com/example/android_programming/Navigation/NavController.kt b/app/src/main/java/com/example/android_programming/Navigation/NavController.kt index bec42fa..034959f 100644 --- a/app/src/main/java/com/example/android_programming/Navigation/NavController.kt +++ b/app/src/main/java/com/example/android_programming/Navigation/NavController.kt @@ -5,7 +5,7 @@ import androidx.navigation.NavHostController import androidx.navigation.compose.NavHost import androidx.navigation.compose.composable import com.example.android_programming.HomeScreen.HomeScreen -import com.example.android_programming.Screens.LikeScreen +import com.example.android_programming.LikeScreen.LikeScreen import com.example.android_programming.Screens.OrderScreen import com.example.android_programming.Screens.ProfileScreen diff --git a/app/src/main/java/com/example/android_programming/Screens/LikeScreen.kt b/app/src/main/java/com/example/android_programming/Screens/LikeScreen.kt deleted file mode 100644 index f463a2a..0000000 --- a/app/src/main/java/com/example/android_programming/Screens/LikeScreen.kt +++ /dev/null @@ -1,36 +0,0 @@ -package com.example.android_programming.Screens; - -import androidx.compose.foundation.background -import androidx.compose.foundation.layout.Box -import androidx.compose.foundation.layout.fillMaxSize -import androidx.compose.material.MaterialTheme -import androidx.compose.material.Text -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.text.font.FontWeight -import androidx.compose.ui.tooling.preview.Preview - -@Composable -fun LikeScreen() { - Box( - modifier = Modifier - .fillMaxSize() - .background(Color.White), - contentAlignment = Alignment.Center - ) { - Text( - text = "Like", - fontSize = MaterialTheme.typography.h3.fontSize, - fontWeight = FontWeight.Bold, - color = Color.Black - ) - } -} - -@Composable -@Preview -fun LikeScreenPreview(){ - LikeScreen() -} diff --git a/app/src/main/java/com/example/android_programming/HomeScreen/SneakerItem.kt b/app/src/main/java/com/example/android_programming/SneakerItem.kt similarity index 63% rename from app/src/main/java/com/example/android_programming/HomeScreen/SneakerItem.kt rename to app/src/main/java/com/example/android_programming/SneakerItem.kt index 8aeeb3a..908fff8 100644 --- a/app/src/main/java/com/example/android_programming/HomeScreen/SneakerItem.kt +++ b/app/src/main/java/com/example/android_programming/SneakerItem.kt @@ -1,4 +1,4 @@ -package com.example.android_programming.HomeScreen +package com.example.android_programming data class SneakerItem( val imageId: Int,