Bu derste, uygulamanızın sistem kullanıcı arayüzü görünürlüğü değişiklikleriyle ilgili bildirim alabilmesi için bir dinleyiciyi nasıl kaydedebileceğiniz açıklanmaktadır. Bu, kullanıcı arayüzünüzün diğer bölümlerini sistem çubuklarının gizlenmesi/gösterilmesiyle senkronize etmek istediğinizde yararlı olur.
Bir Dinleyici Kaydetme
Sistem kullanıcı arayüzü görünürlük değişiklikleri hakkında bildirim almak için görünümünüze bir View.OnSystemUiVisibilityChangeListener
kaydedin.
Bu, genellikle gezinme görünürlüğünü kontrol etmek için kullandığınız görünümdür.
Örneğin, bu kodu etkinliğinizin onCreate()
yöntemine ekleyebilirsiniz:
Kotlin
window.decorView.setOnSystemUiVisibilityChangeListener { visibility -> // Note that system bars will only be "visible" if none of the // LOW_PROFILE, HIDE_NAVIGATION, or FULLSCREEN flags are set. if (visibility and View.SYSTEM_UI_FLAG_FULLSCREEN == 0) { // TODO: The system bars are visible. Make any desired // adjustments to your UI, such as showing the action bar or // other navigational controls. } else { // TODO: The system bars are NOT visible. Make any desired // adjustments to your UI, such as hiding the action bar or // other navigational controls. } }
Java
View decorView = getWindow().getDecorView(); decorView.setOnSystemUiVisibilityChangeListener (new View.OnSystemUiVisibilityChangeListener() { @Override public void onSystemUiVisibilityChange(int visibility) { // Note that system bars will only be "visible" if none of the // LOW_PROFILE, HIDE_NAVIGATION, or FULLSCREEN flags are set. if ((visibility & View.SYSTEM_UI_FLAG_FULLSCREEN) == 0) { // TODO: The system bars are visible. Make any desired // adjustments to your UI, such as showing the action bar or // other navigational controls. } else { // TODO: The system bars are NOT visible. Make any desired // adjustments to your UI, such as hiding the action bar or // other navigational controls. } } });
Kullanıcı arayüzünüzü sistem çubuğu görünürlüğündeki değişikliklerle senkronize tutmak genellikle iyi bir uygulamadır. Örneğin, bu işleyiciyi, durum çubuğunun gizlenip gösterilmesiyle birlikte işlem çubuğunu gizlemek ve göstermek için kullanabilirsiniz.