3. malzeme iç içe yerleştirilmiş öğeleri kullanma

Kullanım kolaylığı için, yerleşik Material 3 composable'larının (androidx.compose.material3) çoğu, composable'ların Material spesifikasyonlarına göre uygulamanıza nasıl yerleştirildiğine bağlı olarak yerleştirmeleri kendileri yönetir.

Inset işleme composable'ları

Aşağıda, otomatik olarak iç kısımları işleyen Material Components listelenmiştir.

Uygulama çubukları

İçerik kapsayıcıları

İskele

Varsayılan olarak, Scaffold kullanmanız ve yararlanmanız için paddingValues parametresi olarak dolgular sağlar. Scaffold, içeriğe yerleştirmeler uygulamaz. Bu sorumluluk size aittir. Örneğin, bu ekleri Scaffold içinde LazyColumn ile kullanmak için:

Scaffold { innerPadding ->
    // innerPadding contains inset information for you to use and apply
    LazyColumn(
        // consume insets as scaffold doesn't do it by default
        modifier = Modifier.consumeWindowInsets(innerPadding),
        contentPadding = innerPadding
    ) {
        // ..
    }
}

Aşağıdaki videoda, kenardan kenara ekran özelliği devre dışı bırakılmış ve etkinleştirilmiş bir Scaffold içinde LazyColumn gösterilmektedir:

Varsayılan iç boşlukları geçersiz kılma

Composable'ın davranışını yapılandırmak için composable'a aktarılan windowInsets parametresini değiştirebilirsiniz. Bu parametre, bunun yerine uygulanacak farklı bir pencere yerleştirme türü olabilir veya boş bir örnek iletilerek devre dışı bırakılabilir: WindowInsets(0, 0, 0, 0).

Örneğin, LargeTopAppBar üzerinde yerleştirme işlemeyi devre dışı bırakmak için windowInsets parametresini boş bir örneğe ayarlayın:

LargeTopAppBar(
    windowInsets = WindowInsets(0, 0, 0, 0),
    title = {
        Text("Hi")
    }
)