Menempatkan aplikasi dalam inset jendela

Mencoba cara Compose
Jetpack Compose adalah toolkit UI yang direkomendasikan untuk Android. Pelajari cara menggunakan WindowInsets di Compose.

Gambar 1. Status bar dan menu navigasi, secara kolektif disebut system bar.

Tata letak semua aplikasi sehingga konten Anda membentang dari tepi atas ke tepi bawah layar. Ini adalah perilaku default mulai Android 15 (level API 35). Artinya, area atas dan bawah aplikasi Anda berada di belakang status bar dan menu navigasi. Bersama-sama, status bar dan menu navigasi disebut kolom sistem. Kolom sistem adalah area yang umumnya dikhususkan untuk tampilan notifikasi, komunikasi status perangkat, dan navigasi perangkat.

Tumpang-tindih antara aplikasi dan area tempat UI sistem ditampilkan adalah salah satu contoh inset jendela, yang mewakili bagian layar tempat aplikasi Anda dapat berpotongan dengan UI sistem. Berpotongan dengan bagian-bagian UI ini dapat berarti menampilkan di atas konten, tetapi juga dapat memberi tahu aplikasi Anda tentang gestur sistem.

Jenis inset jendela berikut tersedia.

  • Secara default, pilih ikut serta untuk memperluas jendela aplikasi Anda agar meluas ke seluruh layar dan menggambar konten aplikasi dari tepi ke tepi di belakang kolom sistem. Gunakan offset agar konten penting dan target sentuh tidak ditampilkan di belakang kolom sistem.

  • Aplikasi yang menampilkan konten seperti film atau gambar dapat menyembunyikan kolom sistem untuk sementara guna mendapatkan pengalaman yang lebih imersif. Pertimbangkan dengan cermat kebutuhan dan ekspektasi pengguna Anda sebelum memodifikasi system bar, karena kolom sistem memberi pengguna cara standar untuk menavigasi perangkat dan melihat statusnya.

  • Potongan layar adalah area di beberapa perangkat yang meluas ke permukaan layar untuk menyediakan ruang bagi sensor di bagian depan perangkat. Aplikasi dapat mendukung potongan layar dengan membuat kueri posisinya sehingga tidak ada konten penting yang tumpang-tindih dengan area potongan.

  • Transisi keyboard adalah contoh umum saat inset jendela diupdate secara dinamis. Aplikasi dapat mengamati status keyboard saat ini, beralih status secara terprogram, mendukung animasi untuk inset jendela, dan membuat konten aplikasi bergerak dengan mulus di antara transisi keyboard.