studio - No se puede encontrar Theme.AppCompat.Light para la nueva compatibilidad con Android ActionBar
agregar icono action bar android (30)
Solución IDEA IntelliJ.
1. Ejecute Android SDK Manager e instale la última versión de SDK y Android Support Libarary . La versión de SDK y Libarary de soporte de Android debe ser la misma ! 23 en mi caso. Otras variantes te darán los errores.
2. Cambie la versión SDK de su proyecto IDEA al último que instaló en el paso anterior. (ps. no puedes usar maven).
3. Agregue un nuevo módulo de sourse existente a su proyecto IDEA.
4. Agregue el proyecto AppCompat. !!! ¡Debería estar bajo el último SDK también! (ps. Diga "Sí" en cualquier lugar en el proceso de este paso)
5. Abra la configuración de su módulo de proyecto principal y añada las siguientes 3 dependencias:
5.1. Dependencia del módulo. Eligió android-support-v7-appcompat
5.2. 2 piezas Dependencias de la biblioteca. Agregue android-sdk / extras / android / support / v7 / appcompat / libs / android-support-v4.jar y android-support-v4 / android-support-v7-appcompat.jar
6. Muy importante !!!
Añadir tema con el prefijo @style (¡no otro!) .
Solución de Android Studio.
1. Ejecute Android SDK Manager e instale la última versión de SDK y Android Support Libarary . La versión de SDK y Libarary de soporte de Android debe ser la misma ! 23 en mi caso. Otras variantes te darán los errores.
2. Añadir al lado de build.gradle
dependencies {
compile ''com.android.support:appcompat-v7:23.0.1''
}
PD: si eres nuevo en el desarrollo de Android, te recomiendo que te mudes a Android Studio & Gradle ahora mismo: obtendrás la forma más sencilla de administrar tu aplicación de Android.
Estoy tratando de implementar la nueva biblioteca de soporte ActionBar que lanzó Google hace un par de días. En el pasado, he implementado con éxito ActionBarSherlock sin ningún problema usando el mismo método que figura en la página de Configuración de la Biblioteca de Soporte del Desarrollador de Google, usando la guía sobre cómo incluir los recursos (que es similar a cómo lo hizo ActionBarSherlock). También tengo el proyecto de la biblioteca cargado en mi propio proyecto como biblioteca.
Puedo decir que la biblioteca se está cargando bien. Cuando, en lugar de extender la Actividad en mi MainActivity.java, lo cambié para extender ActionBarActivity (según las instrucciones de Google), no se producen errores, y se importa correctamente.
Incluso traté de pasar por alto el archivo style.xml y agregar @style/Theme.AppCompat.Light
directamente en AndroidManifest.xml para <application>
y <activity>
con android:theme="@style/ThemeAppCompat.Light"
con todos Intenta dar como resultado el mismo error.
Ahora el problema es que no puedo hacer que cambie el tema, y mucho menos construirlo sin lanzar un error. A continuación se muestra el error que recibo, seguido del archivo style.xml que cambié para usar el nuevo tema.
Tengo una experiencia moderada al trabajar con aplicaciones de Android y ejecuto Eclipse con la última versión de las bibliotecas de soporte y la compilación de SDK con API 18 (Android 4.3).
Error recibido durante la construcción
error: Error al recuperar el elemento primario para el elemento: no se encontró ningún recurso que coincida con el nombre dado ''@ style / Theme.AppCompat.Light''. styles.xml / ActBarTest / res / values line 3 Problema de Android AAPT
style.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Theme.ProsoftStudio.ACTest" parent="@style/Theme.AppCompat.Light">
</style>
</resources>
¿Alguna sugerencia? Esto nunca fue un problema con ActionBarSherlock. Quiero trabajar en el uso de esta nueva biblioteca de soporte. Casi parece que el .jar se está cargando, pero no los recursos.
Cometí un error realmente tonto por esto. Cuando recibía el mismo error cada vez que no podía averiguar qué estaba mal. luego me di cuenta de que una vez que había cerrado todos los proyectos en mi espacio de trabajo y ese era el momento desde que empezaron todos los problemas. Así que simplemente comprueba si tu "appcompat_v7" no está cerrado. Si es así, abra el proyecto haciendo doble clic y luego limpie y vuelva a construir su proyecto. En mi caso los errores se habían ido. ¡Feliz codificación!
Como el dialogo de importación es diferente en Android Studio 1.0.1, no pude hacer funcionar la versión de Svyatoslav Lobachs.
En su lugar, descargué "Repositorio de soporte de Android" en el Administrador de SDK. Luego se agrega
dependencies {
...
compile "com.android.support:appcompat-v7:18.0.+"
}
para build.gradle
. Trabajó para mi.
En mi caso, el problema ocurrió porque quería usar un SDK que no incluye la biblioteca requerida. Cuando aumenté el min. Nivel SDK el problema desapareció. Por supuesto, incluyendo directamente la propia biblioteca, debería eliminar el error también.
Es un poco tarde, pero aquí es cómo lo hago en AndroidStudio.
Haga clic derecho en la aplicación para ir a las propiedades
Vaya a Dependencias y haga clic en el signo ''+'' y elija la dependencia de la biblioteca Elija appcompat-v7
Este es un problema que puede ocurrir en Android Studio si modifica los módulos de estructura de proyecto. En este caso, es posible que necesite volver a agregar las dependencias. En un editor de texto, edite el archivo ''build.gradle'' para incluir las dependencias necesarias:
dependencies {
compile ''com.android.support:appcompat-v7:+''
compile fileTree(dir: ''libs'', include: [''*.jar''])
}
Esto debería actualizar su archivo ''{your_project_name} .iml'' con componentes lib:
<orderEntry type="library" exported="" name="appcompat-v7-19.0.1" level="project" />
Experimenté el mismo problema que el OP al hacer clic con el botón derecho en mi proyecto y seleccionar Cerrar proyectos no relacionados .
En mi caso, resolví el problema volviendo a abrir el proyecto appcompat_v7 y limpiando / reconstruyendo ambos proyectos.
Hice lo siguiente en Eclipse con el proyecto de la Biblioteca de soporte de Android ( APL ) y el Proyecto principal ( MP ):
Aseguró que tanto APL como MP tenían la misma
minSdkVersion
ytargetSdkVersion
.Se agregó APL como una dependencia de compilación para MP :
Entrando en "Propiedades> Java Build Path" de MP , y luego
Seleccionando la pestaña "Proyectos" y agregando APL .
En las propiedades de MP , en "Android", se agregó una referencia a APL en la biblioteca.
1 y 2 consiguieron que las referencias a las clases de Java funcionaran bien ... sin embargo, aún vi el error en el @style/Theme.AppCompat.Light
manifest.xml
para MP al intentar hacer referencia a @style/Theme.AppCompat.Light
de APL . Esto solo desapareció cuando realicé el paso 3.
La solución aceptada solía funcionar para mí una vez, pero no ahora. Tuve que volver a crear un mundo de saludo del mismo tipo (!) En un nuevo espacio de trabajo, lo hice compilar y luego copié todos los directorios, incluidos .hg
y .hgignore
. hg diff
muestra:
- android:targetSdkVersion="19" />
+ android:targetSdkVersion="21" />
Binary file libs/android-support-v4.jar has changed
Parece que Eclipse quiere compilar para API 21 y no puede hacer nada con API 19. Darkly.
La solución más rápida:
Haga clic derecho en el proyecto -> Herramientas de Android -> Agregar biblioteca de soporte ...
Me sucedió cuando Eclipse (Luna) / AndroidSDK (no Android Stduio) se usaron con las últimas herramientas y la biblioteca a partir del 14 de enero de 2015 durante el proyecto como HelloWorld. Cuando instalé esas herramientas e hice de HelloWorld la primera aplicación, acepté todos los valores predeterminados. - Este es el problema en mi caso.
Primero, verifique si la biblioteca de "Biblioteca de soporte de Android" está instalada o no. Si no, instálalo. No está instalado por defecto. Puede hacerlo todo en el "Administrador de Android SDK" disponible en el menú.
(Android SDK Manager -> Extra -> Biblioteca de soporte de Android)
Bendiciones, (un deudor) <> <
Mi problema se resuelve a través de los siguientes pasos
- Archivo-> Importar (android-sdk / extras / android / support / v7 / appcompat)
- Haga clic derecho en Proyecto-> propiedades-> Android. En la sección "Agregar" de la biblioteca y elija la aplicación de biblioteca que se incluye en el paso 1
- Eliminar todos los archivos del directorio libs del proyecto
agregue el siguiente archivo al directorio libs del proyecto
<SDK-PATH>/extras/android/support/v13android-support-v13.jar
Reinicie Eclipse si es necesario. Eso es. Tu problema debe desaparecer.
Necesitas hacer lo siguiente:
-
File->Import (android-sdk/extras/android/support/v7)
. Elija "AppCompat" -
Project-> properties->Android.
En la sección de la biblioteca "Agregar" y seleccione "AppCompat" - ¡Eso es todo!
Nota: si está utilizando "android: showAsAction" en el elemento del menú, debe cambiar el prefijo de android como en el ejemplo ActionBar
No estoy seguro de si la biblioteca de soporte de v13 estaba disponible cuando se publicó esta pregunta, pero en caso de que alguien todavía esté teniendo problemas, he visto que agregar android-support-v13.jar
solucionará todo. Así es como lo hice:
- Haga clic derecho en el proyecto -> Propiedades
- Seleccione Java Build Path desde la tabla de contenido del lado izquierdo
- Ir a la pestaña Bibliotecas
- Agregue el botón de archivos externos y seleccione
<your sdk path>/extras/android/support/v13/android-support-v13.jar
No sé cuántos de ustedes notaron esto. La biblioteca de soporte "appcompat_v7" y su proyecto deben estar en el mismo directorio (me refiero al directorio del área de trabajo). No limpie su proyecto hasta que esté libre de errores, de lo contrario, tendrá un momento difícil con R.java.
Olvidalo todo. Solo usa la librería appcompat descargada usando Android Studio. Tiene todas las definiciones que faltan. No importa si está utilizando en Eclipse o no.
Para Android Studio o IntelliJ, todo lo que necesita hacer es actualizar sus dependencias en gradle.build. Utilicé lo siguiente:
dependencies {
compile fileTree(dir: ''libs'', include: [''*.jar''])
compile ''com.android.support:appcompat-v7:21.0.2''
}
Para IntelliJ IDEA o Android Studio:
Agrega esto al archivo de compilación app.gradle
dependencies {
compile "com.android.support:appcompat-v7:21.0.+"
}
Reemplace -v:xx.0+
, con su objetivo de compilación, si tiene 19 plataformas, entonces debe ser como:
dependencies {
compile "com.android.support:appcompat-v7:19.0.+"
}
Será mejor que haga un nuevo proyecto con cualquier nombre, luego use appcompat_v7 que el programa crea nuevo.
Right Click Project-> properties->Android
En la sección biblioteca Add
y elija biblioteca appcompat.
Si ha agregado la biblioteca appCompat y también ha proporcionado la referencia adecuada de appCompat desde la ubicación del SDK, intente "invalidar cachés / reiniciar" .
Puedes encontrarlo en el menú "Archivo" en Android Studio.
Si, como yo, está siguiendo el tutorial de Android en http://developer.android.com/training/basics/actionbar/setting-up.html y sigue recibiendo este error, intente cambiar el estilo de AppBaseTheme
en todos los styles.xml
archivos. En detalle:
En el archivo
res/values/styles.xml
cambia la línea:<style name="AppBaseTheme" parent="android:Theme.Light">
a:
<style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light">
En el archivo
res/values-v11/styles.xml
cambia la línea:<style name="AppBaseTheme" parent="android:Theme.Holo.Light">
a:
<style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light">
En el archivo
res/values-v14/styles.xml
cambia la línea:<style name="AppBaseTheme" parent="android:Theme.Holo.Light.DarkActionBar">
a:
<style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">
Ahora la aplicación debería funcionar bien.
Sigue los pasos de @rcdmk. Eliminar el soporte para Android v4.jar en su proyecto. Entra en conflicto con la nueva versión actualizada que se encuentra en appcompat.
Tuve el mismo problema e incluso después de importar / agregar un jar / library como se menciona en las respuestas, no solucionaba el error. Por frustración, acabo de crear un nuevo espacio de trabajo y crear un nuevo proyecto de Android, se importó automáticamente appcompat_v7 y no hubo errores al limpiar y compilar. No tenía que importar un solo jar / library manualmente. Solo para tu información, estoy usando el lanzamiento de eclipse Mars.1 (4.5.1) y enfrenté el mismo problema cada vez que creé un nuevo proyecto de Android.
Tuve el mismo problema y desperdicié mis 4-5 horas para la solución. Mi problema resuelto con;
- Desde el administrador del SDK elimine los paquetes "Biblioteca de soporte de Android" y "Repositorio de soporte de Android".
- Reinstalar "Biblioteca de soporte de Android" y "Repositorio de soporte de Android"
- Elimine "android-support-v7-appcompat" o "appcompat_v7 que más tiene en su proyecto.
- Importe android-support-v7-appcompat desde "adt-bundle-windows-x86_64-20140702 / sdk / extras / android / support / v7 / appcompat"
- Seleccione su proyecto y desde el archivo elija las propiedades y encuentre Java Build Path y luego desde la pestaña "Proyecto" borre qué más hay y luego agregue. y debe ver "android-support-v7-appcompat", seleccionarlo y agregarlo a la pestaña Proyecto.
- Verifique su archivo project.properties debajo de sus archivos de Proyecto, verá como esto; target = android-21 android.library.reference.1 = .. / android-support-v7-appcompat luego verifique el archivo AndroidManifest.xml si target es 21 o qué otra cosa eligió. También busque la referencia de la biblioteca igual a la biblioteca que eligió antes.
Espero que encuentres tu solución.
Voy a compartir mi experiencia con este problema. Me estaba volviendo loco por esto, pero descubrí que el problema era un error con Eclipse, en lugar de mi código: en eclipse, no se puede hacer referencia a un proyecto de biblioteca de Android en otro proyecto de Android
Por lo tanto, si tiene la Biblioteca de soporte de Android en su unidad C: y su proyecto en la unidad D: de su computadora, Eclipse no funcionará correctamente y no sabrá dónde está la Biblioteca de soporte de Android (la marca verde se convierte en una cruz roja) ). Para resolver esto, necesita mover ambos proyectos al mismo disco duro.
en eclipse, haga clic con el botón derecho en su proyecto-> seleccione construir ruta y luego seleccione configurar construir ruta. desde la ventana, seleccione el archivo jar que desee y actualice su proyecto
necesita referencia $ ANDROID_SDK / extras / android / support / v7 / appcompat
trabajos:
<style name="MyApp" parent="Theme.AppCompat.Light">
</style>
<style name="MyApp" parent="@style/Theme.AppCompat.Light">
</style>
<style name="Theme.AppCompat.Light.MyApp">
</style>
http://developer.android.com/tools/support-library/setup.html tiene un error. En Propiedad-> Ruta de compilación de Java -> ''Proyecto'' y ''Ordenar y exportar'', no debería haber ningún archivo jar. Eliminándolos y verificando ''Bibliotecas privadas de Android'' y ''Dependencias de Android'' solucioné mi problema.
Para Android Studio 1.2.2
Suelte "android" del valor del atributo parent
:
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"></style>