Skip to content

Commit c061f4c

Browse files
authored
Merge pull request #355 from android/scrolling_grid_2
Adds code snippet for https://developer.android.com/quick-guides/cont…
2 parents 0479c74 + 582a235 commit c061f4c

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

compose/snippets/src/main/java/com/example/compose/snippets/lists/LazyListSnippets.kt

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ import androidx.compose.animation.core.Spring
2323
import androidx.compose.animation.core.spring
2424
import androidx.compose.animation.core.tween
2525
import androidx.compose.foundation.ExperimentalFoundationApi
26+
import androidx.compose.foundation.border
2627
import androidx.compose.foundation.horizontalScroll
2728
import androidx.compose.foundation.layout.Arrangement
2829
import androidx.compose.foundation.layout.Box
@@ -33,11 +34,14 @@ import androidx.compose.foundation.layout.fillMaxSize
3334
import androidx.compose.foundation.layout.fillMaxWidth
3435
import androidx.compose.foundation.layout.height
3536
import androidx.compose.foundation.layout.size
37+
import androidx.compose.foundation.layout.width
3638
import androidx.compose.foundation.layout.wrapContentHeight
39+
import androidx.compose.foundation.layout.wrapContentSize
3740
import androidx.compose.foundation.lazy.LazyColumn
3841
import androidx.compose.foundation.lazy.LazyRow
3942
import androidx.compose.foundation.lazy.grid.GridCells
4043
import androidx.compose.foundation.lazy.grid.GridItemSpan
44+
import androidx.compose.foundation.lazy.grid.LazyHorizontalGrid
4145
import androidx.compose.foundation.lazy.grid.LazyVerticalGrid
4246
import androidx.compose.foundation.lazy.grid.items
4347
import androidx.compose.foundation.lazy.items
@@ -58,6 +62,7 @@ import androidx.compose.runtime.rememberCoroutineScope
5862
import androidx.compose.runtime.saveable.rememberSaveable
5963
import androidx.compose.runtime.snapshotFlow
6064
import androidx.compose.ui.Modifier
65+
import androidx.compose.ui.graphics.Color
6166
import androidx.compose.ui.layout.ContentScale
6267
import androidx.compose.ui.tooling.preview.Preview
6368
import androidx.compose.ui.unit.Density
@@ -772,3 +777,29 @@ fun MessageList(modifier: Modifier = Modifier) {
772777
}
773778
}
774779
// [END android_compose_lists_snap_scroll_button]
780+
781+
// [START android_compose_layout_scrollable_grid]
782+
@Composable
783+
fun ScrollingGrid() {
784+
val itemsList = (0..15).toList()
785+
786+
val itemModifier = Modifier
787+
.border(1.dp, Color.Blue)
788+
.width(80.dp)
789+
.wrapContentSize()
790+
791+
LazyHorizontalGrid(
792+
rows = GridCells.Fixed(3),
793+
horizontalArrangement = Arrangement.spacedBy(16.dp),
794+
verticalArrangement = Arrangement.spacedBy(16.dp)
795+
) {
796+
items(itemsList) {
797+
Text("Item is $it", itemModifier)
798+
}
799+
800+
item {
801+
Text("Single item", itemModifier)
802+
}
803+
}
804+
}
805+
// [END android_compose_layout_scrollable_grid]

0 commit comments

Comments
 (0)