Aucune ressource trouvée - Theme.AppCompat.Light.DarkActionBar

145

J'ai utilisé ActionBar Style Generator, et j'essaie maintenant de l'utiliser dans mon application, mais en obtenant:

erreur: erreur lors de la récupération du parent de l'élément: aucune ressource trouvée correspondant au nom donné «@ style / Theme.AppCompat.Light.DarkActionBar».

J'utilise Android-support-v7-appcompat.jar lib dans le dossier libs

mon objectif est de rendre mon application compatible 2.3 ou supérieure

Soleil
la source
avez-vous ajouté le fichier jar au dossier libs?
Raghunandan
oui android-support-v7-appcompat.jar
dim
1
@AbrahimNeil: voir Can't Find Theme.AppCompat.Light for New Android ActionBar Support peut-être vous aider
ρяσѕρѕя K

Réponses:

96

AppCompatest un projet de bibliothèque. Vous devez référencer le projet de bibliothèque dans votre projet Android.

Consultez la rubrique Ajout de bibliothèques avec des ressources .

Raghunandan
la source
1
déjà placé android-support-v7-appcompat.jar dans le dossier libs
Dim
4
@AbrahimNeil ce n'est pas la bonne façon. c'est un projet de bibliothèque et doit donc être référencé comme les services Google Play
Raghunandan
lorsque j'importe android-support-v7-appcompat.jar, je n'arrive pas à résoudre la cible android-16 est-il nécessaire?
Dim
1
l'ajout implementation 'com.android.support:appcompat-v7:28.0.0', sous les dépendances a résolu mon problème.
Hilal
35

Si vous utilisez Eclipse , ajoutez le reference librarydans votre projet en suivant les étapes suivantes:

  1. Cliquez avec le bouton droit sur votre projet dans la Project Explorervue.
  2. Cliquez sur Properties.
  3. Cliquez Androiddans la Propertiesfenêtre.
  4. Dans le Librarygroupe, cliquez surAdd...
    • Voir l'image ci-dessous.
  5. Sélectionnez la bibliothèque. Cliquez sur OK .
  6. Cliquez OKà nouveau sur le bouton dans la fenêtre Propriétés.

Le bouton "Ajouter" dans la fenêtre Propriétés du projet, section Android, groupe Bibliothèque.

MARYLAND
la source
4
comment savez-vous que op utilise eclipse pas android studio ?. le cliché affiché est pour l'éclipse.
Raghunandan
@Raghunandan désolé oublier de le mentionner
MD
1
Fonctionne parfaitement dans Eclipse. Merci!
Scott Biggs
33

Si vous utilisez Android Studio, ajoutez simplement la dépendance

dependencies {
     implementation 'com.android.support:appcompat-v7:25.0.1'
}

à app/build.gradle. Et cela fonctionnera

New Jersey
la source
2
Hum ... ça ne marche pas ... ça ne résoudra toujours pas android: Theme.AppCompat. * Dans mon fichier styles.xml.
Michael
Je viens de remplacer l'implémentation 'com.android.support:appcompat-v7:28.0.0' par l'implémentation 'com.android.support:appcompat-v7:25.0.1' et maintenant ça marche ... mais pourquoi?
CGR
1
@CGR Je crois qu'Android a changé les thèmes pour 28+ et Light.DarkActionBar n'est plus disponible.
DoomGoober
13

Pour tous ceux qui utilisent VS2015, j'obtenais aussi cette erreur, et il s'avère que je n'avais pas ajouté la bibliothèque au projet ...

Install-Package Xamarin.Android.Support.v7.AppCompat
James Joyce
la source
1
J'ai eu ceci après avoir démarré un nouveau projet dans VS2019 et l'avoir construit. Faire simplement une «solution de reconstruction» sans avoir à installer quoi que ce soit d'autre a résolu les erreurs.
Glen Little
7

Une solution simple - remplacez le contenu de ce fichier (/res/values/styles.xml) par du texte:

<resources>

<!-- Base application theme. -->
<style name="AppTheme" parent="android:Theme.Holo.Light.DarkActionBar">
    <!-- Customize your theme here. -->
</style>

Wladimir Koroy
la source
1
"Erreur lors de la récupération du parent de l'élément: aucune ressource trouvée correspondant au nom donné 'AppBaseTheme'."
Yousha Aleayoub
1
Ce n'est pas AppCompat .
IgorGanapolsky le
4
dependencies {

    compile 'com.android.support:appcompat-v7:23.0.0'

}

Cela a fonctionné pour moi ... dans Android Studio ...

Sreenu Yatam
la source
4

Dans mon cas, j'ai pris un androidprojet d'un ordinateur à un autre et j'ai eu ce problème. Ce qui a fonctionné pour moi, c'est une combinaison de certaines des réponses que j'ai vues:

  • Supprimez la copie de la bibliothèque appcompat qui se trouvait dans le dossier libs de l'espace de travail
  • Installez SDK 21
  • Modifiez les propriétés du projet pour utiliser cette version SDK entrez la description de l'image ici
  • Configurer et démarrer un émulateur compatible avec SDKS 21
  • Mettez à jour la configuration d'exécution pour demander à l'appareil de s'exécuter et choisissez Exécuter

Le mien a bien fonctionné après ces étapes.

JanB
la source
3

L'utilisation de Visual Studio 2015 (Windows7) + Xamarin avait cette erreur et après avoir essayé plusieurs choses (installation de packages, téléchargement android_m2repository_r10.zip ...) a terminé la suppression du dossier Xamarin complet à l' intérieur

C:\Users\<my user>\AppData\Local

Après cela, reconstruisez l'application dans VS et les erreurs ont disparu.

Riga
la source
Cela a fonctionné pour moi :) Remarque: Utilisation de Visual Studio Enterprise. 2017 15.8 Preview 3.0
David Jones
A travaillé pour moi aussi, en utilisant VS 2017.
Richard Lyle
3

assurez-vous qu'il y a un répertoire v7 dans votre sdk, je pensais qu'avoir la «bibliothèque de support Android» (en Extras) était suffisant. Il s'est avéré que je manquais le `` référentiel Maven local pour les bibliothèques de support (extras; android; m2repository) '' Studio a trouvé cela en fait et a corrigé les dépendances de gradle. en utilisant gradle pour construire puis a travaillé. $ app de chat / build.gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.2"

    defaultConfig {
        applicationId "pat.example.com.gdbdemo"
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
     compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:23.2.1'
}
Patrick Lefevre
la source
3
dependencies {
    implementation 'com.android.support:appcompat-v7:28.0.0'
}

compile a été remplacé par l'implémentation, je ne sais pas pourquoi.

Paul McCarthy
la source
C'est la solution pour moi.
shizhen
2

Si vous utilisez Android.mk pour créer, utilisez USE_AAPT2, qui est lié à la ressource générée à partir de l'AAR.

Ajoutez la ligne ci-dessous dans le fichier Android.mk:

LOCAL_USE_AAPT2: = vrai

Prasanth.NVS
la source
1
  1. Mettez à jour votre SDK dans le gestionnaire et assurez-vous de l'inclure Android support librarydans les extras
  2. Accédez au SDK dans l'explorateur de fichiers (Finder sur mac) pour rechercher le dossier supplémentaire ( ..\sdk\extras\android\support\v7\appcompat\res\valuessous Windows). Quelque part là-dedans, il y a un themes.xmlet themes_base.xml . Copiez ces deux fichiers.
  3. Dans votre projet, collez les fichiers dans le répertoire 'values'
Alex Jolig
la source
La copie de themes_base.xml dans res / values ​​a résolu le problème d'origine mais a abouti à d'autres références non résolues.
FractalBob
1

Si vous utilisez Visual Studio pour MAC , résolvez le problème en cliquant sur Projet> Restauration des packages Nutget

JotaPardo
la source
0

Dans Eclipse: Lors de l'importation d'une bibliothèque de support en tant que bibliothèque de projet en suivant les instructions de Ajout de bibliothèques de support , n'oubliez pas de cocher l'option "Copier les projets dans l'espace de travail" !

villamejia
la source
0

J'ai eu le même problème. Aucune des solutions énumérées ici n'a amélioré ma situation. Il s'est avéré que j'importais le dossier parent d'un projet dans Android Studio 1.5, plutôt que le dossier du projet lui-même. Cela a jeté Gradel dans un tizzy. La solution était d'importer le dossier du projet à la place.

BishopZ
la source
-1

Dans xamarin, si vous rencontrez ce problème lorsque vous ajoutez un nouveau sdk. La solution simple est d'ouvrir votre fichier de styles et d'ajouter cette ligne.

<style name="AppTheme" parent="android:Theme.Holo.Light.DarkActionBar"></style>

C'est une meilleure solution plutôt que d'ajouter appcompat.

Nawin
la source