Bazı içerikler en iyi, herhangi bir gösterge olmadan tam ekranda veya gezinme çubuğuna dokunun. Örnek olarak şunlar verilebilir: videolar, oyunlar, resimler galeri, kitap ve sunu slaytlarını kullanabilirsiniz. Buna denir yoğun modu kullanın. Bu sayfada, içeriği tam ekranda görüntülemenizi sağlar.
Yoğun içerik modu, kullanıcıların oyun sırasında yanlışlıkla çıkmaktan kaçınmasına ve resim, video ve kitapların keyfini çıkarmak için etkileyici bir deneyim sunar. Ancak kullanıcıların bildirimleri kontrol etmek için uygulamalara girip çıkma sıklığına dikkat edin. veya başka işlemler yapmak için kullanır. Yoğun içerik modu Kullanıcıların sistemde gezinmeye kolay erişimi kaybetmesine neden oluyor. Yalnızca yoğun içerik modunu kullan sunduğu avantaj, fazladan ekran kullanımının ötesine geçip boşluk oluşturur.
WindowInsetsControllerCompat.hide()
kullanın
sistem çubuklarını gizleyin ve WindowInsetsControllerCompat.show()
geri getirmek için kullanılır.
Aşağıdaki snippet'te, bir düğmeyi tıklayarak gizlenecek ve gösterilecek bir düğme yapılandırma görebilirsiniz.
Kotlin
override fun onCreate(savedInstanceState: Bundle?) { ... val windowInsetsController = WindowCompat.getInsetsController(window, window.decorView) // Configure the behavior of the hidden system bars. windowInsetsController.systemBarsBehavior = WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE // Add a listener to update the behavior of the toggle fullscreen button when // the system bars are hidden or revealed. ViewCompat.setOnApplyWindowInsetsListener(window.decorView) { view, windowInsets -> // You can hide the caption bar even when the other system bars are visible. // To account for this, explicitly check the visibility of navigationBars() // and statusBars() rather than checking the visibility of systemBars(). if (windowInsets.isVisible(WindowInsetsCompat.Type.navigationBars()) || windowInsets.isVisible(WindowInsetsCompat.Type.statusBars())) { binding.toggleFullscreenButton.setOnClickListener { // Hide both the status bar and the navigation bar. windowInsetsController.hide(WindowInsetsCompat.Type.systemBars()) } } else { binding.toggleFullscreenButton.setOnClickListener { // Show both the status bar and the navigation bar. windowInsetsController.show(WindowInsetsCompat.Type.systemBars()) } } ViewCompat.onApplyWindowInsets(view, windowInsets) } }
Java
@Override protected void onCreate(Bundle savedInstanceState) { ... WindowInsetsControllerCompat windowInsetsController = WindowCompat.getInsetsController(getWindow(), getWindow().getDecorView()); // Configure the behavior of the hidden system bars. windowInsetsController.setSystemBarsBehavior( WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE ); // Add a listener to update the behavior of the toggle fullscreen button when // the system bars are hidden or revealed. ViewCompat.setOnApplyWindowInsetsListener( getWindow().getDecorView(), (view, windowInsets) -> { // You can hide the caption bar even when the other system bars are visible. // To account for this, explicitly check the visibility of navigationBars() // and statusBars() rather than checking the visibility of systemBars(). if (windowInsets.isVisible(WindowInsetsCompat.Type.navigationBars()) || windowInsets.isVisible(WindowInsetsCompat.Type.statusBars())) { binding.toggleFullscreenButton.setOnClickListener(v -> { // Hide both the status bar and the navigation bar. windowInsetsController.hide(WindowInsetsCompat.Type.systemBars()); }); } else { binding.toggleFullscreenButton.setOnClickListener(v -> { // Show both the status bar and the navigation bar. windowInsetsController.show(WindowInsetsCompat.Type.systemBars()); }); } return ViewCompat.onApplyWindowInsets(view, windowInsets); }); }
İsteğe bağlı olarak, gizlenecek ve belirlenecek sistem çubuklarının türünü belirtebilirsiniz kullanıcıların etkileşim kurduğu etkileşimlerdir.
Hangi sistem çubuklarının gizleneceğini belirtme
Gizlenecek sistem çubuklarının türünü belirtmek için aşağıdaki parametrelerden birini iletin
WindowInsetsControllerCompat.hide()
numaralı telefona.
WindowInsetsCompat.Type.systemBars()
kullanarak şu işlemleri yapabilirsiniz: iki sistem çubuğunu gizleyin.WindowInsetsCompat.Type.statusBars()
kullanarak şu işlemleri yapabilirsiniz: yalnızca durum çubuğunu gizleyebilirsiniz.WindowInsetsCompat.Type.navigationBars()
kullanarak şu işlemleri yapabilirsiniz: yalnızca gezinme çubuğunu gizleyebilirsiniz.
Gizli sistem çubuklarının davranışını belirtin
WindowInsetsControllerCompat.setSystemBarsBehavior()
kullanın
kullanın.
WindowInsetsControllerCompat.BEHAVIOR_SHOW_BARS_BY_TOUCH
kullanın ve kontrol panelinde herhangi bir kullanıcı etkileşiminde gizli sistem görüntüleyin.WindowInsetsControllerCompat.BEHAVIOR_SHOW_BARS_BY_SWIPE
kullanın herhangi bir sistem hareketinde gizli sistem çubuklarını açmak için çubuğun gizlendiği kenara doğru çizin.WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
kullanın gibi sistem hareketleri içeren gizli sistem çubuklarını geçici olarak göstermek için Ekranın çubuğun gizlendiği kenarından hızlıca kaydırın. Bu uygulamanızın içeriğinin üzerini kaplar, ancak bir dereceye kadar Bunlar kısa bir zaman aşımının ardından otomatik olarak gizlenir.