Erreur de gonflage de la classe android.de soutien.de la conception.widget de.TabLayout
Je suis en train de créer un onglet de menu basé sur Google "material design" à l'aide d'Eclipse, mais j'ai une erreur:
Erreur de gonflage de la classe android.de soutien.de la conception.widget de.TabLayout
Fichier journal:
07-30 00:52:40.588: E/Trace(31652): error opening trace file: No such file or directory (2)
07-30 00:52:40.672: E/AndroidRuntime(31652): FATAL EXCEPTION: main
07-30 00:52:40.672: E/AndroidRuntime(31652): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.app.mykitchen/com.app.mykitchen.MainActivity}: android.view.InflateException: Binary XML file line #8: Error inflating class android.support.design.widget.TabLayout
07-30 00:52:40.672: E/AndroidRuntime(31652): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2184)
07-30 00:52:40.672: E/AndroidRuntime(31652): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2211)
07-30 00:52:40.672: E/AndroidRuntime(31652): at android.app.ActivityThread.access$600(ActivityThread.java:149)
07-30 00:52:40.672: E/AndroidRuntime(31652): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1300)
07-30 00:52:40.672: E/AndroidRuntime(31652): at android.os.Handler.dispatchMessage(Handler.java:99)
07-30 00:52:40.672: E/AndroidRuntime(31652): at android.os.Looper.loop(Looper.java:153)
07-30 00:52:40.672: E/AndroidRuntime(31652): at android.app.ActivityThread.main(ActivityThread.java:4987)
07-30 00:52:40.672: E/AndroidRuntime(31652): at java.lang.reflect.Method.invokeNative(Native Method)
07-30 00:52:40.672: E/AndroidRuntime(31652): at java.lang.reflect.Method.invoke(Method.java:511)
07-30 00:52:40.672: E/AndroidRuntime(31652): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:821)
07-30 00:52:40.672: E/AndroidRuntime(31652): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:584)
07-30 00:52:40.672: E/AndroidRuntime(31652): at dalvik.system.NativeStart.main(Native Method)
07-30 00:52:40.672: E/AndroidRuntime(31652): Caused by: android.view.InflateException: Binary XML file line #8: Error inflating class android.support.design.widget.TabLayout
07-30 00:52:40.672: E/AndroidRuntime(31652): at android.view.LayoutInflater.createView(LayoutInflater.java:613)
07-30 00:52:40.672: E/AndroidRuntime(31652): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687)
07-30 00:52:40.672: E/AndroidRuntime(31652): at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)
07-30 00:52:40.672: E/AndroidRuntime(31652): at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
07-30 00:52:40.672: E/AndroidRuntime(31652): at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
07-30 00:52:40.672: E/AndroidRuntime(31652): at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
07-30 00:52:40.672: E/AndroidRuntime(31652): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:258)
07-30 00:52:40.672: E/AndroidRuntime(31652): at android.app.Activity.setContentView(Activity.java:1867)
07-30 00:52:40.672: E/AndroidRuntime(31652): at com.app.mykitchen.MainActivity.onCreate(MainActivity.java:30)
07-30 00:52:40.672: E/AndroidRuntime(31652): at android.app.Activity.performCreate(Activity.java:5020)
07-30 00:52:40.672: E/AndroidRuntime(31652): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
07-30 00:52:40.672: E/AndroidRuntime(31652): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2148)
07-30 00:52:40.672: E/AndroidRuntime(31652): ... 11 more
07-30 00:52:40.672: E/AndroidRuntime(31652): Caused by: java.lang.reflect.InvocationTargetException
07-30 00:52:40.672: E/AndroidRuntime(31652): at java.lang.reflect.Constructor.constructNative(Native Method)
07-30 00:52:40.672: E/AndroidRuntime(31652): at java.lang.reflect.Constructor.newInstance(Constructor.java:417)
07-30 00:52:40.672: E/AndroidRuntime(31652): at android.view.LayoutInflater.createView(LayoutInflater.java:587)
07-30 00:52:40.672: E/AndroidRuntime(31652): ... 22 more
07-30 00:52:40.672: E/AndroidRuntime(31652): Caused by: java.lang.NoClassDefFoundError: android.support.design.R$styleable
07-30 00:52:40.672: E/AndroidRuntime(31652): at android.support.design.widget.TabLayout.<init>(TabLayout.java:236)
07-30 00:52:40.672: E/AndroidRuntime(31652): at android.support.design.widget.TabLayout.<init>(TabLayout.java:221)
07-30 00:52:40.672: E/AndroidRuntime(31652): ... 25 more
MainActivity.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<android.support.design.widget.TabLayout
android:id="@+id/sliding_tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
<android.support.v4.view.ViewPager
android:id="@+id/viewpager"
android:layout_width="match_parent"
android:layout_height="0px"
android:layout_weight="1"
android:background="@color/white" />
</LinearLayout>
J'ai essayé de réglage de la AppBase thème de AppCompat, mais il n'aide pas.
- avez-vous importé d'aide à la conception de la bibliothèque? Ses différentes à partir de l'app compat bibliothèque
- Oui je l'ai fait la dernière version qu'il peut être téléchargé avec le sdk manager.
- Est-ce que votre activité s'étend de la AppCompatActivity?
- non, je prolonger la fragmentActivity, la cause que je dois travailler avec des fragments avec la nouvelle conception de la bibliothèque de prise en charge.
- Je suis confrontée au même problème. Pouvez-vous partager moi comment vous l'avez résolu votre problème. Qui va m'aider beaucoup.
- Je suis confronté exactement la même erreur et j'ai ajouté d'aide à la conception de la bibliothèque et s'étend mon activité principale par AppCompatActivity. Je suis à l'aide de <style name="MyMaterialTheme.La Base de" parent="Thème.AppCompat.La lumière.DarkActionBar"> thème parent. J'ai déjà soulevé DONC, la question stackoverflow.com/questions/32826285/.... S'il vous plaît aider moi. Merci
- Cochez la case [ce][1] réponse, il devrait résoudre le problème. [1]: stackoverflow.com/a/32895459/4849804
- Double Possible de ClassNotFoundException: Ne pas à trouver de la classe "android.de soutien.de la conception.R$styleable"
- J'ai été absent d'aide à la conception de la bibliothèque. Vient d'ajouter à construire.gradle:
api('com.android.support:design:27.1.1')
- Double Possible de Comment puis-je importer du matériel de la bibliothèque de conception pour Android Studio?
Vous devez vous connecter pour publier un commentaire.
J'ai aussi étaient confrontés au même problème. Après quelques recherches sur la question, j'ai trouver la solution. Ajouter un autre style de ressources pour votre tablayout.
J'ai décrit sur mon blog aussi.
http://www.geeksmember.blogspot.in/2015/10/errorerror-inflating-class.html
Ajouter à votre values-v21/styles.xml. Si vous n'avez pas de valeurs-v21 dossier en créer un dans app/res dossier. Et puis créer un styles.xml fichier dans ce dossier.
Puis ajouter la coutume de l'attribut style à votre tablayout.
J'ai aussi été confronté au même problème et cela fonctionne comme un charme.
Référence: https://code.google.com/p/android/issues/detail?id=175582
ViewPager
position à l'aide d'unTabLayout
à partir d'ici: stackoverflow.com/questions/38459309/... et j'obtiens ce même message d'erreur. De nouveau, il semble être lié à AppCompat mais la solution ci-dessus ne fonctionne pas - je reçois toujours le même message d'erreur (en plus d'une foiré mise en page parce que le thème change)J'ai un peu plus dans mon Logcat. Vous pouvez voir à la fin qu'il y a une explication claire:
Tous ce style de truc exemples ci-dessus ne sont pas exactement vrai.
Nous avons 2 scénarios:
1) Notre TabLayout au sein de l'activité.
Si c'est le cas, nous avons besoin de définir le thème de cette activité à AppCompat thème.
Nous devons d'abord définir ce thème dans style.xml (il n'a pas à être 21 version).
Alors on peut définir l'activité thème dans le fichier manifest.
Nous n'avons pas besoin de faire quoi que ce soit avec nos layout.xml
2) Notre TabLayout est à l'intérieur du fragment
Situation similaire, mais il est plus difficile de changer de thème.
Nous avons d'abord définir le thème ci-dessus. Ensuite, nous devons changer le thème de notre TabFragment. Pour ce faire, nos ActivityThatHoldsTheFragment doit pas sur un thème défini dans le manifeste. Il peut hériter de l'application thème, mais ne pouvez pas l'avoir directement.
Alors nous devons changer fragment thème dans OnCreateView de ce fragment:
Tout fragment onCreateView peut ressemble à ceci: