Kullanım kolaylığı için yerleşik Material 3 bileşenlerinin çoğu
(androidx.compose.material3),
bileşenlerin uygulamanızda Material spesifikasyonlarına göre nasıl yerleştirildiğine bağlı olarak iç kısımları kendileri yönetir.
İç boşlukları işleyen composable'lar
Aşağıda, iç kısımları otomatik olarak işleyen Materyal Bileşenleri'nin listesi verilmiştir.
Uygulama çubukları
TopAppBar/CenterAlignedTopAppBar/MediumTopAppBar/LargeTopAppBar: Pencerenin üst kısmında kullanıldığı için sistem çubuklarının üst ve yatay taraflarını dolgu olarak uygular.BottomAppBar: Sistem çubuklarının alt ve yatay taraflarını dolgu olarak uygular.
İçerik kapsayıcıları
ModalDrawerSheet/DismissibleDrawerSheet/PermanentDrawerSheet(kalıcı gezinme çekmecesindeki içerik): İçeriğe dikey ve başlangıç ekleri uygular.ModalBottomSheet: Alt ekleri uygular.NavigationBar: Alt ve yatay ekleri uygular.NavigationRail: Dikey ve başlangıç iç kısımlarını uygular.
İskele
Varsayılan olarak
Scaffold
, kullanmanız için iç kısımları PaddingValues parametresi olarak sağlar.
Scaffold, içeriğe içe yerleştirme uygulamaz. Bu sorumluluk size aittir.
Örneğin, bu iç kısımları Scaffold içindeki bir 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, uçtan uca ekranın devre dışı bırakıldığı ve etkinleştirildiği bir Scaffold içindeki LazyColumn gösterilmektedir:
Scaffold içinde PaddingValues parametresini kullanmak, kullanıcı arayüzünüzü sistem kullanıcı arayüzünden ve ekran kesintilerinden uzaklaştırmak için genellikle yeterlidir. Kullanıcı arayüzünüze çok fazla dolgu uygulamamak için Scaffold kullanıyorsanız cetveller, dolgu değiştiriciler veya iç metin boyutu değiştiriciler gibi ek iç metin işleme yaklaşımları kullanmaktan kaçının.
Varsayılan iç boşlukları geçersiz kılma
Composable'ın davranışını yapılandırmak için composable'a iletilen windowInsets parametresini değiştirebilirsiniz. Bu parametre, uygulanacak farklı bir pencere iç boşluğu türü olabilir veya boş bir örnek iletilerek devre dışı bırakılabilir:
WindowInsets(0, 0, 0, 0).
Örneğin, LargeTopAppBar üzerinde içe yerleştirme işlemini devre dışı bırakmak için windowInsets parametresini boş bir örneğe ayarlayın:
LargeTopAppBar( windowInsets = WindowInsets(0, 0, 0, 0), title = { Text("Hi") } )