Grid, iki boyutlu bir düzeni esnek bir şekilde uygulamanıza olanak tanıyan bir Jetpack Compose API'sidir.
Bu API ile öğeleri, mevcut kapsayıcı boyutuna uyum sağlayan çok sütunlu veya çok satırlı düzenlerde görüntüleyebilirsiniz.
Grid ile esnek ve uyarlanabilir iki boyutlu bir düzen.
Izgara'nın benzer composable'lardan farkı nedir?
Compose'da LazyVerticalGrid gibi benzer bileşenler zaten mevcuttur.
Bu bileşenler, genellikle büyük ve homojen veri kümelerinin görselleştirilmesi için kullanılır.
Örneğin, bir video akışı uygulamasında içerik kataloğu görüntülemek için kullanılabilir.
Bu bileşenler, bir ekranın veya karmaşık bileşenin yapısal düzeni için tasarlanmamıştır.
Birden fazla Row ve Column bileşenini birleştirerek iki boyutlu bir düzen de uygulayabilirsiniz.
Ancak bu yaklaşımın derin hiyerarşiler ve uyum sağlama zorlukları gibi bazı dezavantajları vardır.
Aşağıdaki tabloda, her API için uygun olan düzenlere genel bir bakış sunulmaktadır:
| Bileşen | Amaç |
|---|---|
LazyVerticalGrid, LazyStaggeredGrid, LazyHorizontalGrid |
Geç yükleme gerektiren büyük, homojen veri kümelerinin görselleştirilmesi. |
Row, Column, FlexBox |
Tek boyutlu düzen |
Grid |
İki boyutlu düzen |
Terminoloji
Grid hizmetinin işleyiş şeklini anlamak için aşağıdaki terminolojiyi öğrenin.
Izgara çizgisi
Izgara, yatay ve dikey çizgilerden oluşur. Izgaranızda üç satır varsa son satırdan sonraki çizgi de dahil olmak üzere dört yatay çizgi bulunur. Aşağıdaki resimde her noktalı çizgi bir kılavuz çizgisini temsil eder:
Izgara izi
Izgara kanalı, iki ızgara çizgisi arasındaki boşluktur. Satır kanalı iki yatay çizgi arasında, sütun kanalı ise iki dikey çizgi arasındadır. Bu kanalların boyutunu tanımlamak için ızgarayı oluştururken bunlara bir boyut atayın.
Tablo hücresi
Izgara hücresi, bir satır ve sütun yolunun kesişimidir.
Izgara alanı
Izgara alanı, birkaç ızgara hücresinden oluşur. Bir öğenin birden fazla kanalı kapsamasını sağlayarak bir ızgara alanı tanımlayabilirsiniz.
Izgara boşluğu
Izgara boşluğu, ızgara kanalları arasındaki boşluktur. Kullanıcı arayüzü öğelerini boşluklara yerleştiremezsiniz ancak boşlukların üzerine yayabilirsiniz.