Android 4.1 ve Daha Üstü Durum Çubuğunu Gizleme

Android 4.1 ve Daha Üstü Durum Çubuğunu Gizleme

Durum çubuğunu kullanarak Android 4.1’de (API seviye 16) ve daha üstü gizleyebilirsiniz setSystemUiVisibility(). setSystemUiVisibility() UI bayraklarını bireysel bakış açısına ayarlar; bu ayarlar pencere düzeyinde toplanır. setSystemUiVisibility() UI bayrakları ayarlamak, sistem çubukları üzerinde bayrak kullanmaktan daha ayrıntılı kontrol sağlar WindowManager. Bu pasaj durum çubuğunu gizler:

Kotlin

// Hide the status bar.
window.decorView.systemUiVisibility = View.SYSTEM_UI_FLAG_FULLSCREEN
// Remember that you should never show the action bar if the
// status bar is hidden, so hide that too if necessary.
actionBar?.hide()

Java

View decorView = getWindow().getDecorView();
// Hide the status bar.
int uiOptions = View.SYSTEM_UI_FLAG_FULLSCREEN;
decorView.setSystemUiVisibility(uiOptions);
// Remember that you should never show the action bar if the
// status bar is hidden, so hide that too if necessary.
ActionBar actionBar = getActionBar();
actionBar.hide();

Aşağıdakilere dikkat et:

Kullanıcı arabirimi bayrakları kaldırıldıktan sonra (örneğin, etkinlikten uzaklaşarak), çubukları tekrar gizlemek istiyorsanız uygulamanızın bunları sıfırlaması gerekir. Uygulamanızın buna göre yanıt verebilmesi için UI görünürlük değişikliklerini nasıl dinleyeceğinizle ilgili bir tartışma için bkz.

UI bayraklarını ayarladığınız yer fark yaratır. Sistem çubuklarını etkinliğinizin onCreate() yönteminde gizlerseniz ve kullanıcı Ana Sayfa tuşuna basarsa, sistem çubukları yeniden belirir. Kullanıcı etkinliği yeniden açtığında onCreate() çağrılmaz, böylece sistem çubukları görünür durumda kalır. Kullanıcının etkinliğinize girip çıkarken sistem UI değişikliklerinin devam etmesini istiyorsanız, UI bayraklarını onResume() veya olarak ayarlayın onWindowFocusChanged().

Bu yöntemin setSystemUiVisibility() ancak aradığınız görünüm görünür durumda olması durumunda bir etkiye sahiptir.

Görünümden uzaklaşmak, ayarlanan bayrakların setSystemUiVisibility() silinmesine neden olur .

Yorumlar / Düşünceler