Skip to content

Commit 3586c3c

Browse files
committed
refactor tutorial layout
1 parent 8bf428e commit 3586c3c

File tree

4 files changed

+50
-45
lines changed

4 files changed

+50
-45
lines changed

app/src/main/java/com/uravgcode/chooser/tutorial/presentation/TutorialScreen.kt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,9 @@ fun TutorialScreen(
5454
modifier = Modifier.weight(1f)
5555
) { page ->
5656
Box(
57-
modifier = Modifier.fillMaxSize(),
57+
modifier = Modifier
58+
.fillMaxSize()
59+
.padding(16.dp),
5860
contentAlignment = Alignment.Center
5961
) {
6062
val isPageFullyVisible = pagerState.currentPage == page &&

app/src/main/java/com/uravgcode/chooser/tutorial/presentation/page/ButtonPage.kt

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import androidx.compose.foundation.layout.Arrangement
44
import androidx.compose.foundation.layout.Box
55
import androidx.compose.foundation.layout.Column
66
import androidx.compose.foundation.layout.Row
7-
import androidx.compose.foundation.layout.Spacer
87
import androidx.compose.foundation.layout.aspectRatio
98
import androidx.compose.foundation.layout.fillMaxWidth
109
import androidx.compose.foundation.layout.padding
@@ -22,19 +21,16 @@ import com.uravgcode.chooser.tutorial.presentation.component.NumberButtonExplana
2221
@Composable
2322
fun ButtonPage() {
2423
Column(
25-
modifier = Modifier
26-
.fillMaxWidth()
27-
.padding(24.dp),
2824
horizontalAlignment = Alignment.CenterHorizontally,
2925
verticalArrangement = Arrangement.Center
3026
) {
3127
Text(
3228
text = "How to Use",
33-
style = MaterialTheme.typography.headlineMedium,
29+
modifier = Modifier.padding(bottom = 8.dp),
30+
style = MaterialTheme.typography.headlineLarge,
3431
fontWeight = FontWeight.Bold,
3532
textAlign = TextAlign.Center
3633
)
37-
Spacer(modifier = Modifier.padding(8.dp))
3834

3935
Row(
4036
modifier = Modifier.fillMaxWidth(),
@@ -62,10 +58,9 @@ fun ButtonPage() {
6258
}
6359
}
6460

65-
Spacer(modifier = Modifier.padding(8.dp))
6661
Text(
6762
text = "Long press on the Mode button to access settings",
68-
style = MaterialTheme.typography.bodyMedium,
63+
modifier = Modifier.padding(top = 8.dp),
6964
textAlign = TextAlign.Center
7065
)
7166
}

app/src/main/java/com/uravgcode/chooser/tutorial/presentation/page/ModePage.kt

Lines changed: 24 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,10 @@ import androidx.compose.animation.graphics.vector.AnimatedImageVector
88
import androidx.compose.foundation.BorderStroke
99
import androidx.compose.foundation.Image
1010
import androidx.compose.foundation.layout.Arrangement
11+
import androidx.compose.foundation.layout.Box
1112
import androidx.compose.foundation.layout.Column
1213
import androidx.compose.foundation.layout.Row
13-
import androidx.compose.foundation.layout.aspectRatio
14+
import androidx.compose.foundation.layout.fillMaxSize
1415
import androidx.compose.foundation.layout.fillMaxWidth
1516
import androidx.compose.foundation.layout.padding
1617
import androidx.compose.foundation.layout.size
@@ -57,13 +58,12 @@ fun ModePage(
5758
}
5859

5960
Column(
60-
modifier = Modifier
61-
.fillMaxWidth()
62-
.padding(24.dp),
6361
horizontalAlignment = Alignment.CenterHorizontally,
6462
verticalArrangement = Arrangement.Center
6563
) {
66-
Row(verticalAlignment = Alignment.CenterVertically) {
64+
Row(
65+
verticalAlignment = Alignment.CenterVertically,
66+
) {
6767
Icon(
6868
painter = painterResource(iconId),
6969
contentDescription = null,
@@ -73,17 +73,20 @@ fun ModePage(
7373
)
7474
Text(
7575
text = title,
76-
style = MaterialTheme.typography.headlineMedium,
76+
style = MaterialTheme.typography.headlineLarge,
7777
fontWeight = FontWeight.Bold
7878
)
7979
}
8080
Text(
8181
text = description,
82-
textAlign = TextAlign.Center
82+
textAlign = TextAlign.Center,
83+
modifier = Modifier.padding(bottom = 8.dp)
8384
)
8485

8586
Card(
86-
modifier = Modifier.padding(8.dp),
87+
modifier = Modifier
88+
.weight(1f)
89+
.padding(vertical = 8.dp),
8790
shape = RoundedCornerShape(24.dp),
8891
colors = CardColors(
8992
containerColor = Color.Black,
@@ -96,20 +99,23 @@ fun ModePage(
9699
color = MaterialTheme.colorScheme.outlineVariant
97100
)
98101
) {
99-
Image(
100-
painter = rememberAnimatedVectorPainter(image, atEnd),
101-
contentDescription = null,
102-
modifier = Modifier
103-
.fillMaxWidth()
104-
.aspectRatio(1f),
105-
contentScale = ContentScale.Crop
106-
)
102+
Box(
103+
modifier = Modifier.fillMaxSize(),
104+
contentAlignment = Alignment.Center
105+
) {
106+
Image(
107+
painter = rememberAnimatedVectorPainter(image, atEnd),
108+
contentDescription = null,
109+
modifier = Modifier.fillMaxSize(),
110+
contentScale = ContentScale.Fit
111+
)
112+
}
107113
}
108114

109115
Text(
110116
text = previewDescription,
111-
style = MaterialTheme.typography.bodyMedium,
112-
textAlign = TextAlign.Center
117+
textAlign = TextAlign.Center,
118+
modifier = Modifier.padding(top = 8.dp)
113119
)
114120
}
115121
}

app/src/main/java/com/uravgcode/chooser/tutorial/presentation/page/WelcomePage.kt

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,10 @@ import androidx.compose.animation.graphics.res.rememberAnimatedVectorPainter
66
import androidx.compose.animation.graphics.vector.AnimatedImageVector
77
import androidx.compose.foundation.Image
88
import androidx.compose.foundation.layout.Arrangement
9+
import androidx.compose.foundation.layout.Box
910
import androidx.compose.foundation.layout.Column
10-
import androidx.compose.foundation.layout.Spacer
11-
import androidx.compose.foundation.layout.aspectRatio
11+
import androidx.compose.foundation.layout.fillMaxSize
1212
import androidx.compose.foundation.layout.fillMaxWidth
13-
import androidx.compose.foundation.layout.height
1413
import androidx.compose.foundation.layout.padding
1514
import androidx.compose.material3.MaterialTheme
1615
import androidx.compose.material3.Text
@@ -23,6 +22,7 @@ import androidx.compose.runtime.setValue
2322
import androidx.compose.ui.Alignment
2423
import androidx.compose.ui.Modifier
2524
import androidx.compose.ui.layout.ContentScale
25+
import androidx.compose.ui.text.font.FontWeight
2626
import androidx.compose.ui.text.style.TextAlign
2727
import androidx.compose.ui.unit.dp
2828
import com.uravgcode.chooser.R
@@ -40,37 +40,39 @@ fun WelcomePage() {
4040
}
4141

4242
Column(
43-
modifier = Modifier
44-
.fillMaxWidth()
45-
.padding(24.dp),
4643
horizontalAlignment = Alignment.CenterHorizontally,
4744
verticalArrangement = Arrangement.Center
4845
) {
4946
Text(
50-
text = "Welcome to Chooser!",
47+
text = "Welcome to Chooser",
48+
modifier = Modifier.padding(bottom = 8.dp),
5149
style = MaterialTheme.typography.headlineLarge,
50+
fontWeight = FontWeight.Bold,
5251
textAlign = TextAlign.Center
5352
)
54-
Spacer(modifier = Modifier.height(8.dp))
5553
Text(
5654
text = "An app that helps you make random selections",
57-
style = MaterialTheme.typography.bodyLarge,
58-
textAlign = TextAlign.Center
55+
textAlign = TextAlign.Center,
56+
modifier = Modifier.padding(bottom = 8.dp)
5957
)
6058

61-
Image(
62-
painter = rememberAnimatedVectorPainter(image, atEnd),
63-
contentDescription = null,
59+
Box(
6460
modifier = Modifier
65-
.fillMaxWidth()
66-
.aspectRatio(1f),
67-
contentScale = ContentScale.Crop
68-
)
61+
.weight(1f)
62+
.padding(vertical = 8.dp),
63+
) {
64+
Image(
65+
painter = rememberAnimatedVectorPainter(image, atEnd),
66+
contentDescription = null,
67+
modifier = Modifier.fillMaxSize(),
68+
contentScale = ContentScale.Fit
69+
)
70+
}
6971

7072
Text(
7173
text = "Place your fingers on the screen and let the app choose for you",
72-
style = MaterialTheme.typography.bodyMedium,
7374
textAlign = TextAlign.Center,
75+
modifier = Modifier.padding(top = 8.dp)
7476
)
7577
}
7678
}

0 commit comments

Comments
 (0)