Skip to content

Commit 2452439

Browse files
committed
release-1.0.0 fix: 소속 등록 등록하기 버튼 keyboard 위로 뜨는 현상 제거
1 parent a785214 commit 2452439

1 file changed

Lines changed: 19 additions & 1 deletion

File tree

feature/agency/src/main/java/com/moneymong/moneymong/feature/agency/register/AgencyRegisterScreen.kt

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,14 @@ import androidx.compose.foundation.layout.size
1212
import androidx.compose.material.Icon
1313
import androidx.compose.runtime.Composable
1414
import androidx.compose.runtime.getValue
15+
import androidx.compose.runtime.mutableStateOf
16+
import androidx.compose.runtime.remember
17+
import androidx.compose.runtime.setValue
1518
import androidx.compose.ui.Alignment
1619
import androidx.compose.ui.Modifier
1720
import androidx.compose.ui.input.pointer.pointerInput
21+
import androidx.compose.ui.layout.onSizeChanged
22+
import androidx.compose.ui.platform.LocalDensity
1823
import androidx.compose.ui.platform.LocalFocusManager
1924
import androidx.compose.ui.res.painterResource
2025
import androidx.compose.ui.tooling.preview.Preview
@@ -41,6 +46,7 @@ fun AgencyRegisterScreen(
4146
) {
4247
val state by viewModel.collectAsState()
4348
val focusManager = LocalFocusManager.current
49+
val density = LocalDensity.current
4450

4551
viewModel.collectSideEffect {
4652
when (it) {
@@ -93,14 +99,26 @@ fun AgencyRegisterScreen(
9399
contentDescription = null
94100
)
95101
Spacer(modifier = Modifier.height(8.dp))
102+
103+
var contentHeight by remember { mutableStateOf(0.dp) }
104+
val contentModifier = if (contentHeight == 0.dp) Modifier.weight(1f) else Modifier
96105
AgencyResisterContentView(
97-
modifier = Modifier.weight(1f),
106+
modifier = contentModifier
107+
.onSizeChanged {
108+
if (contentHeight == 0.dp) {
109+
with(density) {
110+
contentHeight = it.height.toDp()
111+
}
112+
}
113+
}
114+
.height(contentHeight),
98115
agencyType = state.agencyType,
99116
onAgencyTypeChange = viewModel::changeAgencyType,
100117
agencyName = state.agencyName,
101118
onAgencyNameChange = viewModel::changeAgencyName,
102119
changeNameTextFieldIsError = viewModel::changeNameTextFieldIsError,
103120
)
121+
104122
val canRegister = state.agencyName.text.isNotEmpty() && state.nameTextFieldIsError.not()
105123
MDSButton(
106124
modifier = Modifier

0 commit comments

Comments
 (0)