Skip to content

Commit e34c891

Browse files
authored
Adding simple divider examples (#275)
* Adding simple divider examples * Adding region tags * Apply Spotless --------- Co-authored-by: jakeroseman <[email protected]>
1 parent ff89f15 commit e34c891

File tree

3 files changed

+87
-0
lines changed

3 files changed

+87
-0
lines changed

compose/snippets/src/main/java/com/example/compose/snippets/SnippetsActivity.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ import com.example.compose.snippets.components.CheckboxExamples
3434
import com.example.compose.snippets.components.ChipExamples
3535
import com.example.compose.snippets.components.ComponentsScreen
3636
import com.example.compose.snippets.components.DialogExamples
37+
import com.example.compose.snippets.components.DividerExamples
3738
import com.example.compose.snippets.components.FloatingActionButtonExamples
3839
import com.example.compose.snippets.components.ProgressIndicatorExamples
3940
import com.example.compose.snippets.components.ScaffoldExample
@@ -97,6 +98,7 @@ class SnippetsActivity : ComponentActivity() {
9798
navController.popBackStack()
9899
}
99100
TopComponentsDestination.CheckboxExamples -> CheckboxExamples()
101+
TopComponentsDestination.DividerExamples -> DividerExamples()
100102
}
101103
}
102104
}
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
/*
2+
* Copyright 2024 The Android Open Source Project
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License");
5+
* you may not use this file except in compliance with the License.
6+
* You may obtain a copy of the License at
7+
*
8+
* https://www.apache.org/licenses/LICENSE-2.0
9+
*
10+
* Unless required by applicable law or agreed to in writing, software
11+
* distributed under the License is distributed on an "AS IS" BASIS,
12+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
* See the License for the specific language governing permissions and
14+
* limitations under the License.
15+
*/
16+
17+
package com.example.compose.snippets.components
18+
19+
import androidx.compose.foundation.layout.Arrangement
20+
import androidx.compose.foundation.layout.Column
21+
import androidx.compose.foundation.layout.IntrinsicSize
22+
import androidx.compose.foundation.layout.Row
23+
import androidx.compose.foundation.layout.fillMaxSize
24+
import androidx.compose.foundation.layout.fillMaxWidth
25+
import androidx.compose.foundation.layout.height
26+
import androidx.compose.foundation.layout.padding
27+
import androidx.compose.material3.HorizontalDivider
28+
import androidx.compose.material3.MaterialTheme
29+
import androidx.compose.material3.Text
30+
import androidx.compose.material3.VerticalDivider
31+
import androidx.compose.runtime.Composable
32+
import androidx.compose.ui.Alignment
33+
import androidx.compose.ui.Modifier
34+
import androidx.compose.ui.text.font.FontWeight
35+
import androidx.compose.ui.tooling.preview.Preview
36+
import androidx.compose.ui.unit.dp
37+
38+
@Preview
39+
@Composable
40+
fun DividerExamples() {
41+
Column(
42+
modifier = Modifier
43+
.padding(16.dp)
44+
.fillMaxSize(),
45+
verticalArrangement = Arrangement.spacedBy(24.dp),
46+
horizontalAlignment = Alignment.CenterHorizontally,
47+
) {
48+
Text("Column with divider", fontWeight = FontWeight.Bold)
49+
HorizontalDividerExample()
50+
Text("Row with divider", fontWeight = FontWeight.Bold)
51+
VerticalDividerExample()
52+
}
53+
}
54+
55+
@Preview
56+
// [START android_compose_components_horizontaldivider]
57+
@Composable
58+
fun HorizontalDividerExample() {
59+
Column(
60+
verticalArrangement = Arrangement.spacedBy(8.dp),
61+
) {
62+
Text("First item in list")
63+
HorizontalDivider(thickness = 2.dp)
64+
Text("Second item in list")
65+
}
66+
}
67+
// [END android_compose_components_horizontaldivider]
68+
69+
@Preview
70+
// [START android_compose_components_verticaldivider]
71+
@Composable
72+
fun VerticalDividerExample() {
73+
Row(
74+
modifier = Modifier
75+
.fillMaxWidth()
76+
.height(IntrinsicSize.Min),
77+
horizontalArrangement = Arrangement.SpaceEvenly
78+
) {
79+
Text("First item in row")
80+
VerticalDivider(color = MaterialTheme.colorScheme.secondary)
81+
Text("Second item in row")
82+
}
83+
}
84+
// [END android_compose_components_verticaldivider]

compose/snippets/src/main/java/com/example/compose/snippets/navigation/Destination.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,4 +38,5 @@ enum class TopComponentsDestination(val route: String, val title: String) {
3838
ScaffoldExample("scaffoldExample", "Scaffold"),
3939
AppBarExamples("appBarExamples", "App bars"),
4040
CheckboxExamples("checkboxExamples", "Checkbox"),
41+
DividerExamples("dividerExamples", "Dividers"),
4142
}

0 commit comments

Comments
 (0)