Skip to content

Commit c3c6f6c

Browse files
committed
Feat: 인트로 화면 캐릭터 그래픽 추가
1 parent 538e738 commit c3c6f6c

File tree

6 files changed

+33
-29
lines changed

6 files changed

+33
-29
lines changed
55.1 KB
Loading
30.1 KB
Loading
81.3 KB
Loading
156 KB
Loading
235 KB
Loading

presentation/src/main/java/com/threegap/bitnagil/presentation/intro/IntroScreen.kt

Lines changed: 33 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,28 @@
11
package com.threegap.bitnagil.presentation.intro
22

3-
import androidx.compose.foundation.background
4-
import androidx.compose.foundation.layout.Box
3+
import androidx.compose.foundation.Image
54
import androidx.compose.foundation.layout.Column
65
import androidx.compose.foundation.layout.Spacer
6+
import androidx.compose.foundation.layout.aspectRatio
77
import androidx.compose.foundation.layout.fillMaxSize
88
import androidx.compose.foundation.layout.fillMaxWidth
99
import androidx.compose.foundation.layout.height
1010
import androidx.compose.foundation.layout.padding
11-
import androidx.compose.material3.Button
1211
import androidx.compose.material3.Text
1312
import androidx.compose.runtime.Composable
1413
import androidx.compose.ui.Alignment
1514
import androidx.compose.ui.Modifier
16-
import androidx.compose.ui.graphics.Color
15+
import androidx.compose.ui.layout.ContentScale
16+
import androidx.compose.ui.platform.LocalDensity
17+
import androidx.compose.ui.platform.LocalWindowInfo
18+
import androidx.compose.ui.res.painterResource
1719
import androidx.compose.ui.text.style.TextAlign
1820
import androidx.compose.ui.tooling.preview.Preview
1921
import androidx.compose.ui.unit.dp
2022
import androidx.hilt.navigation.compose.hiltViewModel
23+
import com.threegap.bitnagil.designsystem.BitnagilTheme
24+
import com.threegap.bitnagil.designsystem.R
25+
import com.threegap.bitnagil.designsystem.component.atom.BitnagilTextButton
2126
import com.threegap.bitnagil.presentation.intro.model.IntroIntent
2227
import com.threegap.bitnagil.presentation.intro.model.IntroSideEffect
2328
import org.orbitmvi.orbit.compose.collectSideEffect
@@ -45,47 +50,46 @@ private fun IntroScreen(
4550
onStartButtonClick: () -> Unit,
4651
modifier: Modifier = Modifier,
4752
) {
53+
val windowInfo = LocalWindowInfo.current
54+
val screenHeight = with(LocalDensity.current) {
55+
windowInfo.containerSize.height.toDp()
56+
}
57+
4858
Column(
4959
horizontalAlignment = Alignment.CenterHorizontally,
50-
modifier = modifier
51-
.fillMaxSize()
52-
.padding(horizontal = 16.dp),
60+
modifier = modifier.fillMaxSize(),
5361
) {
62+
Spacer(modifier = Modifier.height(screenHeight * 0.0748f))
63+
5464
Text(
5565
text = "당신의 하루 리듬을 이해하고,\n작은 변화를 함께 시작해볼게요.",
66+
color = BitnagilTheme.colors.navy500,
67+
style = BitnagilTheme.typography.title2Bold,
5668
textAlign = TextAlign.Center,
57-
modifier = Modifier
58-
.fillMaxWidth()
59-
.padding(top = 48.dp),
69+
modifier = Modifier.fillMaxWidth(),
6070
)
6171

62-
Spacer(
63-
modifier = Modifier.height(38.dp),
64-
)
72+
Spacer(modifier = Modifier.height(screenHeight * 0.151f))
6573

66-
Box(
74+
Image(
75+
painter = painterResource(R.drawable.intro_character),
76+
contentDescription = null,
77+
contentScale = ContentScale.Fit,
6778
modifier = Modifier
68-
.background(Color.Gray)
69-
.fillMaxWidth()
70-
.height(458.dp),
71-
) {
72-
Text(
73-
text = "빛나길 로고",
74-
)
75-
}
76-
77-
Spacer(
78-
modifier = Modifier.height(38.dp),
79+
.padding(50.dp)
80+
.aspectRatio(260f / 295f),
7981
)
8082

81-
Button(
83+
Spacer(modifier = Modifier.weight(1f))
84+
85+
BitnagilTextButton(
86+
text = "시작하기",
8287
onClick = onStartButtonClick,
8388
modifier = Modifier
8489
.fillMaxWidth()
90+
.padding(horizontal = 16.dp)
8591
.padding(bottom = 20.dp),
86-
) {
87-
Text("시작하기")
88-
}
92+
)
8993
}
9094
}
9195

0 commit comments

Comments
 (0)