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
LazyHorizontalGridbileşimi, ızgaranın yatay yönünü belirler.- Dikey ızgara oluşturmak için bunun yerine
LazyVerticalGridsimgesini kullanın.
- Dikey ızgara oluşturmak için bunun yerine
rowsmülkü, ızgara içeriğinin nasıl düzenleneceğini belirtir.- Dikey ızgara için düzenlemeyi belirtmek üzere
columnsmülkünü kullanın.
- Dikey ızgara için düzenlemeyi belirtmek üzere
items(itemsList),itemsList'ıLazyHorizontalGrid'e ekler. Lambda, her öğe için birTextbileşeni oluşturur ve metni öğe açıklamasına ayarlar.item(),LazyHorizontalGridöğesine tek bir öğe ekler. Lambda iseitems()'e benzer şekilde tek birTextbileş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.Adaptiveparametresini kullanarak satır sayısını ayarlayın.Aşağıdaki kodda
20.dpdeğ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:
Liste veya ızgara görüntüleme
Etkileşimli bileşenleri görüntüleme