theme studio pantalla navegador modo inmersivo google full completa chrome activity android android-theme android-fullscreen

navegador - pantalla completa android studio



Android: haciendo una aplicaciĆ³n de pantalla completa (8)

¿Cuál es el cambio más simple que puedo hacer a una nueva Actividad en blanco, como fue creada por la última versión de Android Studio, para que la aplicación aparezca en pantalla completa?

Quiero crear una aplicación de pantalla completa para Android. Estoy trabajando con Android Studio. Esta publicación sugiere que agregué una línea como ...

android:theme="@android:style/Theme.Holo.Light.NoActionBar.Fullscreen"

... al archivo AndroidManifest.xml, como se muestra a continuación:

<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.lexogram.james.blackslate" > <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="com.lexogram.james.blackslate.MainActivity" android:label="@string/app_name" android:theme="@android:style/Theme.Holo.Light.NoActionBar.Fullscreen"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>

Cuando hago esto, la aplicación se compila pero se bloquea al iniciar. Si elimino la línea, la aplicación funciona bien, pero con la barra de acción y una barra de título, como también lo notaron otros usuarios.

Este es mi primer intento de crear una aplicación para Android, por lo que mi aplicación apenas se modifica con respecto al ejemplo original de Hello World.

EDITAR: creé un nuevo proyecto, e hice este único cambio. Aquí hay un extracto del registro de errores:

FATAL EXCEPTION: main java.lang.RuntimeException: Unable to start activity ComponentInfo{com.lexogram.james.test/com.lexogram.james.test.MainActivity}: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity. at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2669)...

NOTA: Estoy probando en un Samsung SGH-T499Y antiguo, ejecutando Android 2.2 (Froyo)


En mi caso todo funciona bien. Ver en logcat. Tal vez logcat muestre algo que pueda ayudarte a resolver tu problema

De todos modos puedes intentar hacerlo programáticamente:

public class ActivityName extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // remove title requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); setContentView(R.layout.main); } }


Está teniendo este problema porque la actividad que intenta aplicar android:theme="@android:style/Theme.Holo.Light.NoActionBar.Fullscreen"> extiende ActionBarActivity, que requiere que se aplique el tema AppCompat.

Amplíe su actividad desde Activity lugar de desde ActionBarActivity

Es posible que tengas que cambiar tu clase de Java en consecuencia.

Si también desea eliminar la barra de estado, entonces use esto antes de setContentView(layout) en el método onCreateView

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


Hace poco tuve exactamente el mismo problema y también me beneficié de la siguiente publicación (además de la solución de Rohit5k2 anterior):

https://bsgconsultancy.wordpress.com/2015/09/13/convert-any-website-into-android-application-by-using-android-studio/

En el Paso 3, MainActivity extiende la Activity lugar de ActionBarActivity (como se mencionó en Rohit5k2). También es muy importante NoTitleBar elementos de tema NoTitleBar y Fullscreen en los lugares correctos en el archivo AndroidManifest.xml (consulte el Paso 4).


Puedes usar los siguientes códigos para tener una página completa en Android

Paso 1: Hacer el tema en la sección styles.xml

<style name="AppTheme.Fullscreen" parent="AppTheme"> <item name="windowActionBar">false</item> <item name="windowNoTitle">true</item> </style>

Paso 2: Añadir tema en AndroidManifest.xml

<activity android:name=“.Activity” android:theme="@style/AppTheme.Fullscreen"/>

Paso 3: sección de códigos Java

Por ejemplo, puede agregar los siguientes códigos en el método onCreate ().

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


Solo agrega el siguiente atributo a tu tema actual:

<item name="android:windowFullscreen">true</item>

Por ejemplo:

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> <!-- Customize your theme here. --> <item name="colorPrimary">@color/orange</item> <item name="colorPrimaryDark">@android:color/holo_orange_dark</item> <item name="android:windowNoTitle">true</item> <item name="android:windowFullscreen">true</item> </style>


haz esto en tu archivo de manifiesto en tu etiqueta de actividad

android:theme="@style/Theme.AppCompat.Light.NoActionBar"


En llamada onCreate

requestWindowFeature(Window.FEATURE_NO_TITLE); // for hiding title getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);


Respuesta de actualización agregué android:windowIsTranslucent en caso de que tengas una pantalla blanca al inicio de la actividad

solo crea nuevo estilo en valores / estilos.xml

<?xml version="1.0" encoding="utf-8"?> <resources> <style name="AppTheme" parent="Theme.AppCompat.NoActionBar"> <!-- to hide white screen in start of window --> <item name="android:windowIsTranslucent">true</item> </style> </resources>

desde tu AndroidManifest.xml agrega estilo a tu actividad

android:theme="@style/AppTheme"

ser asi

<activity android:name=".Splash" android:theme="@style/AppTheme"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>