Intento mover mis cosas para usarlas en Toolbar
lugar de la barra de acción, pero sigo recibiendo un error que dice
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.tyczj.weddingalbum/com.xxx.xxx.MainActivity}: java.lang.IllegalStateException: This Activity already has an action bar supplied by the window decor. Do not request Window.FEATURE_ACTION_BAR and set windowActionBar to false in your theme to use a Toolbar instead.
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2180)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
at android.app.ActivityThread.access$600(ActivityThread.java:141)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5039)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.IllegalStateException: This Activity already has an action bar supplied by the window decor. Do not request Window.FEATURE_ACTION_BAR and set windowActionBar to false in your theme to use a Toolbar instead.
at android.support.v7.app.ActionBarActivityDelegateBase.setSupportActionBar(ActionBarActivityDelegateBase.java:165)
at android.support.v7.app.ActionBarActivity.setSupportActionBar(ActionBarActivity.java:92)
at com.xxx.xxx.MainActivity.onCreate(MainActivity.java:113)
at android.app.Activity.performCreate(Activity.java:5104)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
at android.app.ActivityThread.access$600(ActivityThread.java:141)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5039)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
at dalvik.system.NativeStart.main(Native Method)
entonces agregué mi estilo para que mi actividad no tuviera barra de acción
<style name="AppCompatTheme" parent="@style/Theme.AppCompat.Light">
<item name="android:windowActionBar">false</item>
</style>
y el tema se aplica a las actividades en mi manifiesto
<activity
android:name=".MainActivity"
android:windowSoftInputMode="adjustResize|stateHidden"
android:theme="@style/AppCompatTheme" android:screenOrientation="portrait"/>
MainActivity extiende GooglePlayServiceActivity, así que también configuré el tema allí
<activity
android:name=".GooglePlayServicesActivity"
android:label="@string/title_activity_google_play_services"
android:theme="@style/AppCompatTheme">
pero sigo recibiendo el error Tampoco solicito la función de ventana en ningún lado. alguna idea de por qué sigo teniendo esto?
windowActionBar
no es lo mismo queandroid:windowActionBar
?Otra forma fácil es hacer que su tema sea un niño de esta
Theme.AppCompat.Light.NoActionBar
manera:fuente
GooglePlayServiceActivity
, no recuerdoAñadir sola línea
android:theme="@style/AppTheme.NoActionBar"
aactivity
enAndroidManifest
y que ha hecho.AndroidManifest.xml :
styles.xml
fuente
Para usar la barra de herramientas como una barra de acción, primero desactive la barra de acción proporcionada por la decoración.
La forma más fácil es hacer que su tema se extienda desde
(o su variante ligera).
En segundo lugar, cree una instancia de la barra Google, generalmente a través de su diseño XML:
Luego, en su Actividad o Fragmento, configure la Barra de herramientas para que actúe como su Barra de acción:
Este código me funcionó.
fuente
<android.support.v7.widget.Toolbar
a XML.Si desea combinar algunas actividades con la barra de acción y otras no, debe usar el tema base que tiene la barra de acción habilitada y luego crear un subtema que lo usará en actividades que no requieren barra de acción
Por ejemplo, puede usar un subestilo como este
Mientras el tema base se extiende, digamos
y luego use el tema sin barra de acción en el archivo AndroidManifest dentro de la etiqueta de actividad, por ejemplo
debe aplicar esto a cada actividad individual que no necesita barra de acción, por lo que si su proyecto requiere menos actividades de barra de acción que no, entonces es mejor aplicar esto en el nivel de tema base
fuente
También me enfrenté al mismo problema. Pero yo solía:
getSupportActionBar().hide();
antes de
setContentView(R.layout.activity_main);
Ahora esta funcionando.
Y podemos probar otra opción en Style.xml ,
fuente
Agregue esto en sus valores / styles.xml
Y agregue el siguiente código en su values-v11 / styles.xml y values-v14 / styles.xml
Eso es. Funcionará.
fuente
Necesitas cambiar
estas líneas en el manifiesto. Funcionará perfectamente para mí.
fuente
Vaya al 'style.xml' de su proyecto y haga que windowActionBar sea falso
fuente
Agregue estas dos líneas en el tema de su aplicación ubicado en style.xml: -
fuente
Tenía barra de herramientas agregada en mi xml. Luego, en mi actividad, estaba agregando esta declaración:
Eliminar esto funcionó para mí. Espero que esto ayude a alguien.
fuente
Si obtiene el error en esta línea:
Debe verificar si su actividad se refiere a un tema que contiene una barra de herramientas. El AppTheme de su aplicación ya puede contener una barra de herramientas, como
e intentas agregar una segunda. Si desea utilizar el AppTheme de su aplicación, debe eliminar el tema de su actividad, en el archivo manifest.xml.
Por ejemplo:
fuente
Use esto dentro de su etiqueta de aplicación en manifiesto o dentro de su etiqueta de Actividad.
fuente
Si está utilizando
Appcompact
Actividad, use estas tres líneas en su tema.fuente
En pocas palabras, puede hacer lo siguiente: -
fuente
Así es como resolví el problema. Agregue el siguiente código en su
AndroidMainfest.xml
fuente
O simplemente cambie el @ Style / AppTheme
Esto funciona para mi!
fuente
fuente
Hay dos soluciones simples y rápidas.
ir a res -> valores -> estilos
TÚ también puedes ver este video para mayor facilidad HAGA CLIC AQUÍ
Solución 1:
Puede eliminar la barra de acción reemplazando
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
a
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
Solución2:
Simplemente agregue estas líneas
<item name="windowActionBar">false</item> <item name="windowNoTitle">true</item>
Así que ahora tu archivo de estilo se ve así
``
``
fuente
Lo resolví eliminando esta línea:
android:theme="@style/Theme.MyCompatTheme"
de las propiedades de actividad en el
Manifest file
fuente
Simplemente ponga
parent="Theme.AppCompat.NoActionBar"
su archivo style.xmlMe gusta -
<style parent="Theme.AppCompat.NoActionBar" name="AppTheme.NoActionBar">
fuente