Barra de navegación de Android superpuesta a mi vista
Tengo un problema con la barra de navegación de Android en dispositivos como Nexus, etc Simplemente en todos los dispositivos, que no tienen el botón de menú de hardware.
Permítanme explicar el tema en más detalles.
- Android: ¿Cómo overlay-a-bitmap / draw-over un mapa de bits?
- Convertir la ubicación en GeoPoint
- Google maps api no coloca el marcador en la ubicación correcta
- Pantalla de superposición en Android
- ¿Posible superponer un botón encima de otro?
Tengo una aplicación donde hay 3 partes. Contenido, ActionBar y el panel inferior con un SeekBar.
ActionBar y el panel inferior con un SeekBar superponen el contenido. Cada vez que hago clic en el contenido del ActionBar y el panel inferior con un SeekBar desaparecen. Que funciona exactamente la forma en que tiene que trabajar. He aquí un fragmento de un código que utilizo para ocultar la interfaz de usuario del sistema:
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT) { decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_IMMERSIVE); } else { getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); getWindow().addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN); actionBar.hide(); } findViewById(R.id.read_book_bottom_bar).setVisibility(View.GONE);
En el método onCreate
de mi actividad, tengo este pedazo de código:
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT) { getWindow().requestFeature(Window.FEATURE_ACTION_BAR_OVERLAY); getWindow().addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_IN_OVERSCAN); }
Sin embargo, cuando lanzo la aplicación en dispositivos con Android Navigation Bar, hay un problema con la visualización del panel inferior con un SeekBar. Simplemente, la barra de navegación de Android superpone el panel inferior con un SeekBar. Aquí hay una captura de pantalla:
Pero cada vez que hago clic en el contenido, la barra de navegación de Android desaparece junto con el ActionBar y el panel inferior con SeekBar. Por lo tanto, el problema es que cada vez que alguien quisiera usar el panel inferior con el SeekBar en dispositivos como NEXUS, no podría usarlo, porque está oculto bajo la barra de navegación de Android.
¿Podría alguien ayudarme con la solución de este problema? Gracias a todos de antemano.
- Cómo agregar vista de superposición sobre otra vista en android?
- Servicio con Overlay - presione el botón de retroceso
- ¿Cómo almacenar en caché android.graphics.path o Bitmap cuando se usan Overlays?
- Detección de la superposición de pantalla: cómo manejar esto en una aplicación de superposición de pantalla
- Dibujar texto en la parte superior de mapa de bits no
- SetFocus (overlayItem) de ItemizedOverlay no funciona
- ¿Cómo superponer el color del texto del elemento de la lista en una región específica?
- ¿Cómo grabar video con superposición animada en Android?
Finalmente, lo resolví con el atributo fitSystemWindows = true
.
Eso también puede ocurrir cuando se establece android:layout_gravity="center"
y android:layout_marginTop="30dp"
He arreglado un problema similar al establecer android:layout_gravity="center_horizontal"
lugar. Entonces marginTop funciona como se supone.