Tema de pantalla completa para AppCompat

Me gustaría saber cómo puedo aplicar el tema de pantalla completa (sin barra de título + barra de acción) a una actividad. Estoy utilizando la biblioteca AppCompat desde el paquete de soporte v7.

He intentado aplicar android:theme="@android:style/Theme.NoTitleBar.Fullscreen" a mi actividad específica, pero se estrelló. Creo que es porque mi tema de aplicación es así.

 <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 

También he intentado esto

 getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 

Que sólo oculta la barra de título pero no la barra de acción. Mi solución actual es ocultar la barra de acción con

 getSupportActionBar().hide(); 

Cuando utiliza Theme.AppCompat en su aplicación puede utilizar FullScreenTheme agregando el código a continuación a los estilos.

 <style name="Theme.AppCompat.Light.NoActionBar.FullScreen" parent="@style/Theme.AppCompat.Light"> <item name="windowNoTitle">true</item> <item name="windowActionBar">false</item> <item name="android:windowFullscreen">true</item> <item name="android:windowContentOverlay">@null</item> </style> 

Y también mencionar en su archivo de manifiesto.

 <activity android:name=".activities.FullViewActivity" android:theme="@style/Theme.AppCompat.Light.NoActionBar.FullScreen" /> 

Basado en la respuesta de @nebyan, encontré que la barra de acción todavía no está ocultando.

El siguiente código funciona para mí:

 <style name="AppFullScreenTheme" parent="Theme.AppCompat.Light.NoActionBar"> <item name="android:windowNoTitle">true</item> <item name="android:windowActionBar">false</item> <item name="android:windowFullscreen">true</item> <item name="android:windowContentOverlay">@null</item> </style> 
 <style name="Theme.AppCompat.Light.NoActionBar" parent="@style/Theme.AppCompat"> <item name="android:windowNoTitle">true</item> <item name="android:windowFullscreen">true</item> </style> 

Utilizando el xml anterior en style.xml, usted será capaz de ocultar el título, así como la barra de acción.

Los problemas surgen entre las versiones anteriores y posteriores de Android 4.0 (API nivel 14).

Desde aquí https://developer.android.com/training/system-ui/status.html He creado mi propia solución ..

 @SuppressLint("NewApi") @Override protected void onResume() { super.onResume(); if (Build.VERSION.SDK_INT < 16) { // Hide the status bar getWindow().setFlag(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); // Hide the action bar getSupportActionBar().hide(); } else { // Hide the status bar getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_FULLSCREEN); / Hide the action bar getActionBar().hide(); } } 

Escribo este código en el método onResume () porque si sales de tu aplicación y luego la vuelves a abrir, ¡la barra de acción permanece activa! (Y así solucionar el problema)

Espero que haya sido de ayuda 😉

Su "solución" (escondiendo el actionBar usted mismo) es la forma normal. Pero google recomienda siempre ocultar el ActionBar cuando el TitleBar está oculto. Echa un vistazo aquí: https://developer.android.com/training/system-ui/status.html

Puede seguir el siguiente paso:

AndoridMenifest.xml

 <activity android:name=".ui.FullImageActivity" android:label="@string/title_activity_main" android:screenOrientation="landscape" android:theme="@style/DialogTheme"> </activity> 

Style.xml

 <style name="DialogTheme" parent="android:Theme.Dialog"> <item name="android:layout_width">fill_parent</item> <item name="android:layout_height">fill_parent</item> <!-- No backgrounds, titles or window float --> <item name="android:windowNoTitle">false</item> <item name="android:windowFullscreen">true</item> <item name="android:windowIsFloating">false</item> </style> 

FullImageActivity.java

 @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setLayout(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT); setContentView(R.layout.image_view); } 

Espero que ayude .. ¡Gracias !!

 protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //to remove "information bar" above the action bar getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); //to remove the action bar (title bar) getSupportActionBar().hide(); } 
 requestWindowFeature(Window.FEATURE_NO_TITLE); 

Para quitar la barra de título en AppCompat:

  @Override protected void onCreate(Bundle savedInstanceState) { supportRequestWindowFeature(Window.FEATURE_NO_TITLE); super.onCreate(savedInstanceState); } 
 <style name="Theme.AppCompat.Light.NoActionBar.FullScreen" parent="@style/Theme.AppCompat.Light"> <item name="windowNoTitle">true</item> <item name="windowActionBar">false</item> <item name="android:windowFullscreen">true</item> <item name="android:windowContentOverlay">@null</item> 

sólo esta ?

 <style name="Theme.AppCompat.Light.NoActionBar.FullScreen"> <item name="android:windowFullscreen">true</item> </style> 
  • Establecer el color de texto mediante programación en la vista de texto principal de Android
  • Estilos comunes para v10 y v11 +?
  • Obtener el valor de color predeterminado de un "EditText" del tema
  • "Posible sobregiro: El elemento raíz pinta el fondo"
  • Barra de herramientas de AppCompat: establece el tema de la barra de herramientas desde el tema superior
  • Botón de acción flotante y error de inflación de biblioteca de diseño
  • Tema XML de Android que hereda de dos temas principales?
  • ¿Cuál es la diferencia entre windowBackground y el fondo para el estilo de las actividades?
  • AS editor de temas no se muestra la vista previa
  • WindowBackground no cambia con el tema
  • ¿Cómo aplicar el tema ligero para la actividad y mantener el tema oscuro para los diálogos al mismo tiempo?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.