Uygulama performansını artırarak büyük veri kümelerini ve dinamik içerikleri yavaş ızgaralarla yönetebilirsiniz. Yavaş ızgara bileşenleri sayesinde öğeleri birden fazla sütun veya satıra yayılmış şekilde kaydırılabilir bir kapsayıcıda gösterebilirsiniz.
Sürüm uyumluluğu
Bu uygulama için projenizin minSDK değerinin API düzeyi 21 veya üstü olarak ayarlanması gerekir.
Bağımlılıklar
Izgara yönüne karar verme
LazyHorizontalGrid
ve LazyVerticalGrid
bileşenleri, öğeleri ızgarada görüntüleme desteği sağlar. Yavaş dikey ızgaralar öğelerini birden fazla sütuna yayılmış, dikey olarak kaydırılabilir bir kapsayıcıda gösterir. Yavaş yatay ızgaralar ise yatay eksende aynı davranışı gösterir.
Kaydırılabilir ızgara oluşturma
Aşağıdaki kod, üç sütunlu yatay kaydırmalı bir ızgara oluşturur:
@Composable fun ScrollingGrid() { val itemsList = (0..15).toList() val itemModifier = Modifier .border(1.dp, Color.Blue) .width(80.dp) .wrapContentSize() LazyHorizontalGrid( rows = GridCells.Fixed(3), horizontalArrangement = Arrangement.spacedBy(16.dp), verticalArrangement = Arrangement.spacedBy(16.dp) ) { items(itemsList) { Text("Item is $it", itemModifier) } item { Text("Single item", itemModifier) } } }
Kodla ilgili önemli noktalar
LazyHorizontalGrid
bileşimi, ızgaranın yatay yönünü belirler.- Dikey ızgara oluşturmak için bunun yerine
LazyVerticalGrid
simgesini kullanın.
- Dikey ızgara oluşturmak için bunun yerine
rows
mülkü, ızgara içeriğinin nasıl düzenleneceğini belirtir.- Dikey ızgara için düzenlemeyi belirtmek üzere
columns
mülkünü kullanın.
- Dikey ızgara için düzenlemeyi belirtmek üzere
items(itemsList)
,itemsList
'ıLazyHorizontalGrid
'e ekler. Lambda, her öğe için birText
bileşeni oluşturur ve metni öğe açıklamasına ayarlar.item()
,LazyHorizontalGrid
öğesine tek bir öğe ekler. Lambda iseitems()
'e benzer şekilde tek birText
bileşeni oluşturur.GridCells.Fixed
, satır veya sütun sayısını tanımlar.Mümkün olduğunca fazla satır içeren bir ızgara oluşturmak için
GridCells.Adaptive
parametresini kullanarak satır sayısını ayarlayın.Aşağıdaki kodda
20.dp
değeri, her sütunun en az 20.dp olduğunu ve tüm sütunların eşit genişlikte olduğunu belirtir. Ekran 88 dp genişliğindeyse her biri 22 dp olan 4 sütun vardır.
Sonuçlar
LazyHorizontalGrid
kullanılarak oluşturulan yatay kaydırılabilir ızgara.Bu kılavuzu içeren koleksiyonlar
Bu kılavuz, daha geniş Android geliştirme hedeflerini kapsayan, özel olarak seçilmiş Hızlı Kılavuz koleksiyonlarından biridir:
![](https://developer.android.google.cn/static/images/quick-guides/collection-illustration.png?hl=tr)
Liste veya ızgara görüntüleme
![](https://developer.android.google.cn/static/images/quick-guides/collection-illustration.png?hl=tr)
Etkileşimli bileşenleri görüntüleme
![](https://developer.android.google.cn/static/images/quick-guides/collection-illustration.png?hl=tr)