Les classes suivantes sont introuvables: android.support.v7.internal.app.WindowDecorActionBar

114

Qu'est-ce qui cause l'erreur suivante dans l'aperçu de la mise en page dans Android Studio?

Problèmes de rendu Les classes suivantes sont introuvables: - android.support.v7.internal.app.WindowDecorActionBar (Fix Build Path, Create Class) Conseil: Essayez de créer le projet.

Rahul
la source
14
fermé comme hors sujet? sérieusement? Ceux qui ont voté pour clore cela ne comprennent certainement pas du tout la question.
Jahid

Réponses:

273

La barre d'action a été obsolète et remplacée par la barre d'outils. Cela étant dit, vous pouvez effectuer les opérations suivantes si vous souhaitez continuer à utiliser Actionbar pour le moment:

  1. Ouvrez styles.xml dans le dossier values ​​à l'intérieur du dossier res.
  2. Ajoutez le mot Base au début du nom du thème afin qu'il indique «Base.Theme.AppCompat.Light.DarkActionBar»

entrez la description de l'image ici

J'ai eu le même problème aujourd'hui et cette solution a fonctionné pour moi. Pour info, je suis dans Android Studio, mais j'espère que la solution est similaire pour Eclipse.

Pour info, voici un article de blog décent sur le remplacement de la barre d'action par la barre d'outils lorsque vous êtes prêt à le faire: https://blog.xamarin.com/android-tips-hello-toolbar-goodbye-action-bar/

joshgoldeneagle
la source
8
Rien de tel que le Goog qui change des choses sous vous. Encore. Belle repérage @joshgoldeneagle!
saywhatnow
7
J'ai eu cette erreur en créant un nouveau projet par défaut dans Android Studio. Cela l'a résolu.
AutonomousApps
Après une journée de recherche, j'ai finalement trouvé le correctif. Merci @joshgoldeneale
Abish R
si "Base.Theme.AppCompat.Light.DarkActionBar" ne fonctionne pas, vous devriez essayer "Theme.Base.AppCompat.Light.DarkActionBar" car cela fonctionne pour moi ... :) (android studio 3.0.1)
Mang Jojot
Vous êtes génial
Naveed Ahmad
46

Je pense que vous devez dépendre "com.android.support:appcompat-v7:23.1.1"de vos moduleparamètres.

ActionBar est obsolète.

Changez simplement vos dépendances de 'com.android.support:appcompat-v7:23.1.1'à 'com.android.support:appcompat-v7:23.0.1'dans "build.gradle" .

Vous pouvez également changer votre style de parent en "Theme.AppCompat.Light.NoActionBar".

Essayez d'utiliser le Toolbarau lieu de ActionBar.

Beau.
la source
32

Celui-ci fonctionne pour moi

La modification du parent AppTheme dans res / values ​​/ styles.xml a résolu ce problème. Remplacer

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
</style>

avec

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

Ou vous pouvez changer le niveau d'API 21 à partir de la liste.

Ravikant Paudel
la source
6
Cela fonctionne, mais que fait-il exactement lorsque vous mettez Base.Theme?
Micro
Android avait introduit une barre d'outils à la place de la barre d'action qui est la cause de cette erreur, mais en la changeant en Base.Theme, vous résolvez simplement le problème. Par défaut, il ne le change pas (dans la version actuelle d'Android Studio), nous devons donc le faire manuellement. Vous pouvez également passer par d'autres réponses qui vous disent également la même chose. Désolé, j'étais occupé dans le projet, je ne peux donc pas répondre rapidement.
Ravikant Paudel
9

goto: res -> valeurs -> styles (V21) ->

Code

<style name="AppTheme.NoActionBar">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    <item name="android:windowDrawsSystemBarBackgrounds">true</item>
    <item name="android:statusBarColor">@android:color/transparent</item>
</style>

sélectionnez votre thème comme Apptheme.NoActionBardans l' aperçu . Parce que ActionBarc'est déprécié, bienvenue à nouveau ToolBar. PAS besoin de modifier vos dépendances dans build.gradle(Module:app). du com.android.support:appcompat-v7:23.1.1au com.android.support:appcompat-v7:23.0.1.

J'espère que ceci vous aidera!!!

Narendra Baratam
la source
8

J'ai eu un problème similaire, et comme beaucoup l'ont dit depuis que ActionBar est obsolète, l'astuce consistait à spécifier

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

REMARQUE: que le parent se termine par .NoActionBar.

Depuis qu'ActionBar est obsolète, Android a utilisé ToolBar que vous pouvez lire ici sur developer.android.com

J'ai essayé de spécifier

<style name="AppTheme.NoActionBar">

Comme un autre message l'a déclaré et qui a jeté des erreurs. Bien que d'autres n'aient pas ce problème.

john.weland
la source
4

J'ai le même problème dans Android Studio 1.5 (même avec AppCompatActivity), et ma tentative de résoudre le problème a été de mettre à jour mon Android Studio vers 2.0. Cela résout le problème dans mon cas. Vous pouvez trouver le lien de téléchargement sur: http://tools.android.com/download/studio/canary/latest

ninjahoahong
la source
De plus, Android Studio 2.0 a une exécution instantanée, ce qui est très cool à mon avis. Mon code est instantanément mis à jour sur mon appareil. Vous devriez vraiment essayer ceci.
ninjahoahong
3
Je veux simplement ajouter ce problème a été résolu dans Android Studio 1.5.1 Issue 194975 - Android - Avertissement parasite: WindowDecorActionBar introuvable - Projet Open Source Android
Suivi des problèmes
3

merci @joshgoldeneagle, a travaillé dans AS v1.4 pour moi. également efficace dans AS est d'ouvrir "build.gradle (Module.app)" et de changer la version de la v7.23.1.1 à la v7.23.0.1 -hth

uber
la source
2

Solution rapide

Sélectionnez un thème sans AtcionBar dans l'outil de prévisualisation de l'interface utilisateur
Bouton Choisir une image entrez la description de l'image ici

vovahost
la source
2

Vous devrez changer le niveau de rendu de l'API à 17, il peut y avoir un problème de rendu avec les API de niveau supérieur, peut-être que les API de niveau supérieur supposent avoir un thème par défaut, et j'espère que vous n'êtes pas spécifié.

entrez la description de l'image ici

Bajrang Hudda
la source
1

Pour AS v1.4, l'ajout de "Base" avant Theme.AppCompat.Light.DarkActionBar dans le dossier styles.xml a résolu le problème

De plus, la mise à jour vers AS v2.1 a également résolu le problème. Ce qui est plus probable dépend des collaborateurs et de leur version AS.

devin e
la source
0

Dans res / values ​​/ styles.xml, vous trouverez votre AppTheme comme ci-dessous: -

Changez-le en: -

en ajoutant "Base", le problème de rendu sera résolu.

JayJoshi
la source
0

Changer le thème du manifeste a résolu mon problème.

 <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
Milon
la source