No se puede encontrar Theme.AppCompat.Light para el nuevo soporte para Android ActionBar

Estoy tratando de implementar la nueva biblioteca de soporte de ActionBar que fue lanzada por Google hace un par de días. En el pasado, implementé ActionBarSherlock sin ningún problema utilizando el mismo método que aparece en la página Configuración de la biblioteca de soporte técnico de Google Developer. Utilizando la guía sobre cómo incluir los recursos (que es similar a cómo lo hizo ActionBarSherlock). Tengo el proyecto de biblioteca cargado en mi propio proyecto como una biblioteca también.

Puedo decir que la biblioteca está cargando bien. Cuando, en lugar de extender la Actividad en mi MainActivity.java, la cambié para extender ActionBarActivity (según las instrucciones de Google), no ocurren errores e importa correctamente.

Incluso intenté pasar por alto el archivo style.xml y añadir @style/Theme.AppCompat.Light directamente a AndroidManifest.xml para <application> y <activity> con android:theme="@style/ThemeAppCompat.Light" con todos Intentos que resultan en el mismo error.

Ahora el problema es que no puedo conseguir que cambie el tema, y ​​mucho menos incluso construir sin lanzar un error. Debajo está el error que estoy recibiendo, seguido por el archivo de style.xml que cambié para utilizar el nuevo tema.

Tengo una experiencia moderada trabajando con aplicaciones de Android y estoy ejecutando Eclipse con la última versión de las bibliotecas de soporte y SDK que compila con API 18 (Android 4.3).

Error recibido durante la generación

Error: Error al recuperar el padre del 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 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 usar esta nueva biblioteca de soporte. Casi parece que el .jar está cargando, pero no los recursos.

30 Solutions collect form web for “No se puede encontrar Theme.AppCompat.Light para el nuevo soporte para Android ActionBar”

Necesita hacer lo siguiente:

  1. File->Import (android-sdk\extras\android\support\v7) . Elija "AppCompat"
  2. Project-> properties->Android. En la sección de la biblioteca "Añadir" y elegir "AppCompat"
  3. ¡Eso es todo!

Nota: si está usando "android: showAsAction" en el elemento de menú, debe cambiar prefijo android como en el ejemplo http://developer.android.com/guide/topics/ui/actionbar.html

Si, como yo, estás siguiendo el tutorial de Android en http://developer.android.com/training/basics/actionbar/setting-up.html y sigue recibiendo este error, intenta cambiar el estilo de AppBaseTheme en todos los styles.xml Archivos. En detalle:

  1. En el archivo res/values/styles.xml cambie la línea:

     <style name="AppBaseTheme" parent="android:Theme.Light"> 

    a:

     <style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light"> 
  2. En el archivo res/values-v11/styles.xml cambie la línea:

     <style name="AppBaseTheme" parent="android:Theme.Holo.Light"> 

    a:

     <style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light"> 
  3. En el archivo res/values-v14/styles.xml cambie 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.

Voy a compartir mi experiencia con este problema. Me estaba volviendo loco debido a esto, pero me enteré de que el problema era un error con Eclipse en sí, en lugar de mi código: En eclipse, no puede hacer referencia a un proyecto de la biblioteca de Android en otro proyecto 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 cruz roja ). Para solucionar esto, necesita mover ambos proyectos al mismo disco duro.

Hice lo siguiente en Eclipse con el proyecto de la Biblioteca de soporte de Android ( APL ) y el Proyecto principal ( MP ):

  1. Aseguró que APL y MP tuvieran la misma minSdkVersion y targetSdkVersion .

  2. Añadido APL como una dependencia de construcción para MP :

    1. Entrar en "Propiedades> Java Build Path" de MP , y luego

    2. Seleccionando la pestaña "Proyectos" y agregando APL .

  3. En las propiedades de MP , bajo "Android", agregó una referencia a APL bajo biblioteca.

1 y 2 obtuvieron las referencias a las clases Java funcionando bien … sin embargo, todavía veía el error en el manifest.xml para MP al intentar hacer referencia a @style/Theme.AppCompat.Light de APL . Esto sólo se fue cuando realicé el paso 3.

Este es un problema que puede suceder en Android Studio si modifica los módulos de estructura del proyecto. En este caso, puede que tenga que agregar las dependencias de nuevo. En un editor de texto edite el archivo 'build.gradle' para incluir las dependencias requeridas:

 dependencies { compile 'com.android.support:appcompat-v7:+' compile fileTree(dir: 'libs', include: ['*.jar']) } 

Esto debería actualizar el archivo '{your_project_name} .iml' con componentes lib:

 <orderEntry type="library" exported="" name="appcompat-v7-19.0.1" level="project" /> 

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 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 Vaya a Dependencias y haga clic en el signo '+' y elija la dependencia de la biblioteca Selecciona appcompat-v7 Selecciona appcompat-v7

Solución IntelliJ IDEA.

1. Ejecute Android SDK Manager e instale la última versión de SDK y Android Support Libarary . La versión de SDK y Android Support Libarary debe ser la misma ! 23 en mi caso. Otras variantes le darán los errores.
Introduzca aquí la descripción de la imagen
2. Cambie la versión SDK de su proyecto IDEA al último instalado en el paso anterior. (Ps. No puede usar Maven).
Introduzca aquí la descripción de la imagen

3. Añada un nuevo Módulo del curso existente a su proyecto IDEA.
Introduzca aquí la descripción de la imagen

4. Agregue el proyecto AppCompat. !!! Debe estar bajo el último SDK también! (Ps. Diga "Sí" en cualquier parte del proceso de este paso)
Introduzca aquí la descripción de la imagen

5. Abre la configuración de tu Módulo de Proyecto principal y añádelo a las 3 siguientes:

5.1. Dependencia del módulo. Elegir android-support-v7-appcompat
Introduzca aquí la descripción de la imagen

5.2. 2 pc. Dependencias de la biblioteca. Agrega android-sdk \ extras \ android \ support \ v7 \ appcompat \ libs \ android-support-v4.jar y android-support-v4 \ android-support-v7-appcompat.jar
Introduzca aquí la descripción de la imagen

En total será:
Introduzca aquí la descripción de la imagen

6. ¡ Muy importante !!!
Agregue el tema con prefijo @style (no otro!) .
Introduzca aquí la descripción de la imagen

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 Android Support Libarary debe ser la misma ! 23 en mi caso. Otras variantes le darán los errores.
Introduzca aquí la descripción de la imagen

2. Agregue junto a build.gradle

 dependencies { compile 'com.android.support:appcompat-v7:23.0.1' } 

PS Si eres nuevo en desarrollo Android, te recomiendo encarecidamente que te muevas a Android Studio & Gradle ahora mismo – obtendrás la forma más sencilla de administrar tu aplicación android.

Para Android Studio 1.2.2

Soltar "android" desde el valor del atributo parent :

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

Necesita la referencia $ ANDROID_SDK / extras / android / support / v7 / appcompat

Para IntelliJ IDEA o Android Studio:

Añadir esto al archivo de compilación app.gradle

 dependencies { compile "com.android.support:appcompat-v7:21.0.+" } 

Reemplace -v:xx.0+ , con su meta de compilación, si tiene plataforma 19 entonces debe ser como:

 dependencies { compile "com.android.support:appcompat-v7:19.0.+" } 

Siga los pasos de @rcdmk. Elimine el soporte para Android android.rar en SU ​​proyecto. Está en conflicto con la nueva versión actualizada que se encuentra en appcompat.

Mi problema resuelve a través de los siguientes pasos

  1. Archivo-> Importar (android-sdk \ extras \ android \ support \ v7 \ appcompat)
  2. Haga clic con el botón derecho en Proyecto-> Propiedades-> Android. En la sección de la biblioteca "Añadir" y elegir la biblioteca appcompat que se incluyen en el paso 1
  3. Eliminar todos los archivos del directorio libs del proyecto
  4. 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. Su problema debe desaparecer.

Tuve el mismo problema y perder mi 4-5 horas para la solución. Mi problema resuelto con;

  1. Desde el gestor de SDK, elimine los paquetes "Android Support Library" y "Android Support Repository".
  2. Vuelva a instalar "Android Support Library" y "Android Support Repository"
  3. Quite "android-support-v7-appcompat" o "appcompat_v7 qué más usted tiene en su proyecto.
  4. Importar android-support-v7-appcompat desde "adt-bundle-windows-x86_64-20140702 \ sdk \ extras \ android \ support \ v7 \ appcompat"
  5. Seleccione su proyecto y de archivo elija propiedades y encuentre Java Build Path y luego en la pestaña "Project" elimine qué más hay y luego Add. Y debe ver "android-support-v7-appcompat", seleccione y agregue a la pestaña Proyecto.
  6. Revise su archivo project.properties debajo de sus archivos de proyecto, verá como esto; Target = android-21 android.library.reference.1 = .. / android-support-v7-appcompat y, a continuación, compruebe el archivo AndroidManifest.xml si el objetivo es 21 o lo que haya elegido. También compruebe para la referencia de la biblioteca igual que su biblioteca que eligió antes.

Espero que encuentres tu solución.

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> 

Dado que el dialouge de importación es diferente en Android Studio 1.0.1, no pude conseguir la versión Svyatoslav Lobachs para trabajar.

En su lugar, descargué "Android Support Repository" en el SDK Manager. Luego añadido

 dependencies { ... compile "com.android.support:appcompat-v7:18.0.+" } 

Para build.gradle . Trabajó para mí.

http://developer.android.com/tools/support-library/setup.html tiene un error. En Propiedades-> Java construir ruta -> 'Proyecto' y 'Orden y Exportación', no debe haber cualquier jar. Eliminarlos y comprobar 'Android Private Libraries' y 'Android Dependencies' resolvieron mi problema.

He experimentado el mismo problema que el OP después de hacer clic con el botón secundario en mi proyecto y seleccionar Close Unrelated Projects .

En mi caso, resolví el problema reabriendo el proyecto appcompat_v7 y limpiando / reconstruyendo ambos proyectos.

Me pasó cuando Eclipse (Luna) / AndroidSDK (no Android Stduio) se utilizaron 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, compruebe si está o no instalada la biblioteca "Biblioteca de soporte de Android". Si no es así, instálelo. No se instala de forma predeterminada. Puedes hacerlo todo en "Android SDK manager" disponible en el menú.

(Android SDK Manager -> Extra -> Biblioteca de soporte para Android)

Bendiciones, (un deudor) <> <

La solución más rápida:

Haga clic derecho en el proyecto -> Herramientas de Android -> Añadir biblioteca de soporte ..

Introduzca aquí la descripción de la imagen

Hice un error muy tonto por esto. Cuando estaba recibiendo el mismo error cada vez que no podía averiguar lo que estaba mal. Entonces me hizo clic que una vez que he cerrado todos los proyectos en mi espacio de trabajo y que era el tiempo desde que todos los problemas comenzaron. Así que solo comprueba si tu "appcompat_v7" no está cerrado. Si es entonces abrir el proyecto por doble clic y luego limpiar y construir su proyecto de nuevo. En mi caso los errores habían desaparecido. Codificación feliz!

No estoy seguro de si la biblioteca de soporte v13 estaba disponible cuando se publicó esta pregunta, pero en caso de que alguien todavía está luchando, he visto que la adición de android-support-v13.jar arreglará todo. Así es como lo hice:

  1. Haga clic derecho en el proyecto -> Propiedades
  2. Seleccione Java Build Path desde la tabla de contenido de la izquierda
  3. Ir a la pestaña Bibliotecas
  4. Añada el botón Jars externo y seleccione <your sdk path>\extras\android\support\v13\android-support-v13.jar

Para Android Studio o IntelliJ, todo lo que necesitas hacer es actualizar tus dependencias en gradle.build. Utilicé lo siguiente:

 dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:21.0.2' } 

No sé cuántos de ustedes notaron esto. Apoye la biblioteca "appcompat_v7" y su proyecto debe estar en un mismo directorio (significo el directorio del espacio de trabajo). No limpiar su proyecto hasta su error libre de lo contrario tendrá un tiempo difícil con R.java

Es mejor que haga un nuevo proyecto con cualquier nombre, a continuación, utilice appcompat_v7 que el programa haga nuevo.

 Right Click Project-> properties->Android 

En la biblioteca de secciones Add y elegir la biblioteca appcompat.

En eclipse haga clic derecho en su proyecto-> seleccione la ruta de construcción y luego seleccione configurar la ruta de construcción. Desde la ventana seleccione el archivo jar que desee y actualice su proyecto

La solución aceptada solía funcionar para mí una vez, pero no ahora. Tuve que volver a crear un hello-mundo del mismo tipo (!) En un nuevo espacio de trabajo, lo hizo compilar, y luego copió todos los directorios, incluyendo .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 la API 21 y no puede hacer nada con la API 19. Oscuramente.

Si ha agregado la biblioteca appCompat y también ha dado la referencia adecuada de appCompat desde la ubicación del SDK, intente "invalidar caches / Restart" .
Lo puedes encontrar en el menú "Archivo" de Android Studio.

En mi caso, el problema se produjo desde que quería utilizar un SDK que no incluye la biblioteca necesaria. Cuando aumenté el min. SDK nivel el problema desapareció. Por supuesto, incluyendo directamente la propia biblioteca, debe eliminar el error también.

Olvidalo todo. Sólo usa la librería appcompat descargada con Android Studio. Tiene todas las definiciones faltantes. No importa si estás usando en Eclipse o no.

Tuve el mismo problema e incluso después de importar / agregar un jar / biblioteca como se menciona en las respuestas que no resolvería el error. Fuera de la frustración, acabo de crear un nuevo espacio de trabajo y creé un proyecto androide fresco e importó automáticamente appcompat_v7 y no había errores en limpiar y construir. No tenía que importar un solo jar / biblioteca manualmente. Sólo FYI Estoy usando eclipse Mars.1 Release (4.5.1) y estaba enfrentando el mismo problema cada vez que creaba un nuevo proyecto android.

  • Aplicación de tema transparente a la actividad: no se ajusta a pantalla completa en dispositivo
  • Style Android SearchView Desplegable popup
  • Botón de acción flotante y error de inflación de biblioteca de diseño
  • Grueso ProgressBar de color naranja en lugar de azul delgado
  • Android textAllCaps en el tema
  • No se puede cambiar el tema Appcompat de luz a holo oscuro
  • Tema personalizado ActionBar android (menú no funciona)
  • ¿El tema de AppCompat DayNight no funciona en Android 6.0?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.