Skip to content

Commit ca73fdc

Browse files
committed
# Feat : 맛을 선택할 때마다 끝으로 자동 스크롤
1 parent 33bbef8 commit ca73fdc

File tree

2 files changed

+32
-3
lines changed

2 files changed

+32
-3
lines changed

feature/note/src/main/java/com/teamwiney/notewrite/NoteWineInfoFlavorScreen.kt

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,11 @@ import androidx.compose.foundation.rememberScrollState
1414
import androidx.compose.foundation.verticalScroll
1515
import androidx.compose.material.Text
1616
import androidx.compose.runtime.Composable
17+
import androidx.compose.runtime.LaunchedEffect
1718
import androidx.compose.runtime.getValue
19+
import androidx.compose.runtime.mutableIntStateOf
20+
import androidx.compose.runtime.remember
21+
import androidx.compose.runtime.setValue
1822
import androidx.compose.ui.Modifier
1923
import androidx.compose.ui.text.style.TextDecoration
2024
import androidx.compose.ui.tooling.preview.Preview
@@ -46,14 +50,22 @@ fun NoteWineInfoFlavorScreen(
4650
) {
4751
val uiState by viewModel.uiState.collectAsStateWithLifecycle()
4852

53+
val scrollState = rememberScrollState()
54+
var selectedItemCount by remember { mutableIntStateOf(0) }
55+
56+
LaunchedEffect(selectedItemCount) {
57+
scrollState.scrollTo(999999)
58+
}
59+
4960
TopBar(content = "와인 정보 입력") {
5061
appState.navController.navigateUp()
5162
}
63+
5264
Column(
5365
modifier = Modifier
5466
.padding(horizontal = 24.dp, vertical = 20.dp)
55-
.weight(1f)
56-
.verticalScroll(rememberScrollState())
67+
.verticalScroll(scrollState)
68+
.weight(1f),
5769
) {
5870
Row(
5971
modifier = Modifier.fillMaxWidth(),
@@ -75,13 +87,15 @@ fun NoteWineInfoFlavorScreen(
7587
)
7688
}
7789
HeightSpacer(30.dp)
90+
7891
WineTasteSlider(
7992
score = uiState.wineNote.sweetness,
8093
onValueChange = { viewModel.updateSweetness(it) },
8194
title = "당도",
8295
subTitle = "단맛의 정도",
8396
)
8497
HeightSpacer(30.dp)
98+
8599
if (uiState.wineNote.sweetness > 0) {
86100
WineTasteSlider(
87101
score = uiState.wineNote.acidity,
@@ -90,7 +104,10 @@ fun NoteWineInfoFlavorScreen(
90104
subTitle = "신맛의 정도"
91105
)
92106
HeightSpacer(30.dp)
107+
108+
selectedItemCount = 1
93109
}
110+
94111
if (uiState.wineNote.acidity > 0) {
95112
WineTasteSlider(
96113
score = uiState.wineNote.body,
@@ -99,7 +116,10 @@ fun NoteWineInfoFlavorScreen(
99116
subTitle = "농도와 질감의 정도"
100117
)
101118
HeightSpacer(30.dp)
119+
120+
selectedItemCount = 2
102121
}
122+
103123
if (uiState.wineNote.body > 0) {
104124
WineTasteSlider(
105125
score = uiState.wineNote.tannin,
@@ -108,7 +128,10 @@ fun NoteWineInfoFlavorScreen(
108128
subTitle = "떫고 씁쓸함의 정도"
109129
)
110130
HeightSpacer(30.dp)
131+
132+
selectedItemCount = 3
111133
}
134+
112135
if (uiState.wineNote.tannin > 0) {
113136
WineTasteSlider(
114137
score = uiState.wineNote.alcohol,
@@ -117,7 +140,10 @@ fun NoteWineInfoFlavorScreen(
117140
subTitle = "알코올 세기의 정도"
118141
)
119142
HeightSpacer(30.dp)
143+
144+
selectedItemCount = 4
120145
}
146+
121147
if (uiState.wineNote.alcohol > 0) {
122148
WineTasteSlider(
123149
score = uiState.wineNote.finish,
@@ -126,6 +152,8 @@ fun NoteWineInfoFlavorScreen(
126152
subTitle = "마신 후 맛과 항야 지속되는 정도"
127153
)
128154
HeightSpacer(30.dp)
155+
156+
selectedItemCount = 5
129157
}
130158
}
131159

feature/note/src/main/java/com/teamwiney/notewrite/NoteWineInfoVintageAndPriceScreen.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -173,7 +173,8 @@ fun NoteWineInfoVintageAndPriceScreen(
173173
)
174174

175175
WineInfoTextField(
176-
value = uiState.wineNote.price, onValueChanged = { viewModel.updatePrice(it) },
176+
value = uiState.wineNote.price,
177+
onValueChanged = { viewModel.updatePrice(it) },
177178
placeholderText = "ex) 30000",
178179
trailingIcon = {
179180
Text(

0 commit comments

Comments
 (0)