Ich habe ein Tutorial der neuen Komponente NavigationView in Support Design Library verfolgt und kann diese Fehlermeldung nicht durchgehen:
Error inflating class Android.support.design.widget.NavigationView
Ich habe hier jeden Workaround ausprobiert
Fehler bei der Verwendung von Android Design Support Library-Elementen
aber Fehlermeldung ist noch vorhanden.
<Android.support.v4.widget.DrawerLayout
xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:app="http://schemas.Android.com/apk/res-auto"
Android:id="@+id/drawer_layout"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:fitsSystemWindows="true" >
<RelativeLayout
Android:layout_width="match_parent"
Android:layout_height="match_parent" >
<include layout="@layout/toolbar" Android:id="@+id/mainToolBar" />
<fragment Android:name="com.ais.cherry.fragment.LoginFragment"
Android:id="@+id/loginFragment"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:layout_below="@id/mainToolBar" />
<fragment Android:name="com.ais.cherry.fragment.WaterFallFragment"
Android:id="@+id/mainFragment"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:layout_below="@id/mainToolBar" />
<fragment Android:name="com.ais.cherry.fragment.SearchFragment"
Android:id="@+id/searchFragment"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:layout_below="@id/mainToolBar" />
<fragment Android:name="com.ais.cherry.fragment.ChatMainFragment"
Android:id="@+id/chatMainFragment"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:layout_below="@id/mainToolBar" />
<fragment Android:name="com.ais.cherry.fragment.ProfileFragment"
Android:id="@+id/profileFragment"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:layout_below="@id/mainToolBar" />
<Android.support.design.widget.NavigationView
Android:id="@+id/nav_view"
Android:layout_width="240dp"
Android:layout_height="match_parent"
Android:layout_gravity="start"
Android:background="@Android:color/white"
app:itemTextColor="#212121"
app:headerLayout="@layout/drawer_header"
app:menu="@menu/drawer" />
</Android.support.v4.widget.DrawerLayout>
buildscript {
repositories {
mavenCentral()
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
classpath 'io.fabric.tools:gradle:1.+'
classpath 'com.Android.tools.build:gradle:1.2.3'
}
}
compileSdkVersion 22
buildToolsVersion "22.0.1"
defaultConfig {
applicationId "com.ais.cherry"
minSdkVersion 16
targetSdkVersion 22
multiDexEnabled true
renderscriptTargetApi 22
renderscriptSupportModeEnabled true
}
dependencies {
compile 'com.Android.support:appcompat-v7:22.2.0'
compile 'com.Android.support:support-v4:22.2.0'
compile 'com.Android.support:design:22.2.0'
compile 'com.Android.support:recyclerview-v7:22.2.0'
}
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.Android.tools.build:gradle:1.2.3'
}
}
<?xml version="1.0" encoding="utf-8"?>
<!-- Base application theme. -->
<style name="AppTheme" parent="AppTheme.Base">
</style>
<style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar">
<item name="Android:windowActionBarOverlay">true</item>
<item name="Android:windowActionModeOverlay">true</item>
<item name="Android:actionModeStyle">@style/AppTheme.ActionModeStyle</item>
<item name="Android:windowActionBar">false</item>
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
<item name="Android:windowNoTitle">true</item>
<!-- Support library compatibility -->
<item name="windowActionBarOverlay">true</item>
<!-- ActionBar color -->
<item name="colorPrimary">#E91E63</item>
<!-- Status bar color -->
<item name="colorPrimaryDark">#C2185B</item>
<!-- Window color -->
<item name="Android:windowBackground">@color/white</item>
<!-- ActionBar title text -->
<item name="Android:titleTextStyle">@style/AppTheme.MyActionBarTitleText</item>
<item name="colorAccent">#9E9E9E</item>
<item name="drawerArrowStyle">@style/AppTheme.MyDrawerArrowStyle</item>
<!-- color for actionMenu-->
<item name="actionMenuTextColor">#FFFFFF</item>
<item name="Android:actionMenuTextColor">#FFFFFF</item>
<!-- Android:textColorSecondary is the color of the menu
overflow icon (three vertical dots) -->
<item name="Android:textColorPrimary">#212121</item>
<item name="Android:textColorSecondary">#FFFFFF</item>
<!--Navigation bar color-->
<item name="Android:navigationBarColor">#E91E63</item>
<!--Status bar color-->
<item name="Android:statusBarColor">#C2185B</item>
</style>
Jede Hilfe wäre dankbar!
<menu xmlns:Android="http://schemas.Android.com/apk/res/Android">
<group Android:checkableBehavior="single">
<item
Android:id="@+id/nav_first_fragment"
Android:icon="@drawable/home_view"
Android:checked="true"
Android:title="@string/main"/>
<item
Android:id="@+id/nav_second_fragment"
Android:icon="@drawable/comment_view"
Android:title="@string/chat"/>
<item
Android:id="@+id/nav_third_fragment"
Android:icon="@drawable/user_view"
Android:title="@string/profile"/>
<item Android:title="@string/search">
<menu>
<item
Android:title="@string/clothes"/>
<item
Android:title="@string/pants"/>
</menu>
</item>
</group>
</menu>
<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:orientation="vertical" Android:layout_width="match_parent"
Android:layout_height="192dp"
Android:background="?attr/colorPrimaryDark"
Android:padding="16dp"
Android:theme="@style/ThemeOverlay.AppCompat.Dark"
Android:gravity="bottom">
<TextView
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:text="@string/title"
Android:textColor="@Android:color/white"
Android:textAppearance="@style/TextAppearance.AppCompat.Body1"/>
</LinearLayout>
Es wurden drei Ausnahmen wie folgt ausgegeben: all weist darauf hin, dass die Probleme durch die Zeile "setContentView (layout)" in layout.xml verursacht werden.
Java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ais.cherry/com.ais.cherry.activity.FirstActivity}: Android.view.InflateException: Binary XML file line #32: Error inflating class Android.support.design.widget.NavigationView
Caused by: Android.view.InflateException: Binary XML file line #32: Error inflating class Android.support.design.widget.NavigationView
Caused by: Java.lang.reflect.InvocationTargetException
Caused by: Android.content.res.Resources$NotFoundException: Resource ID #0x0
Eigentlich geht es nicht um primarycolortext
, das Upgrade oder das Downgrade der Abhängigkeiten. Dieses Problem wird wahrscheinlich auftreten, wenn die Version Ihrer appcompat
-Bibliothek und der Design-Support-Bibliothek nicht übereinstimmen.
Beispiel für eine Übereinstimmungsbedingung
compile 'com.Android.support:appcompat-v7:23.1.1' // appcompat library
compile 'com.Android.support:design:23.1.1' //design support library
Ich hatte einen ähnlichen Fehler ... Wenn ich benutze
<style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">#673AB7</item>
<item name="colorPrimaryDark">#512DA8</item>
<item name="colorAccent">#00BCD4</item>
<item name="Android:textColorPrimary">#212121</item>
<item name="Android:textColorSecondary">#727272</item>
</style>
funktioniert für mich, wenn ich das Android entferne: textColorPrimary und Android: textColorSecondary-Designelemente.
<style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">#673AB7</item>
<item name="colorPrimaryDark">#512DA8</item>
<item name="colorAccent">#00BCD4</item>
</style>
Versuchen Sie, mit einem sehr einfachen App-Thema zu arbeiten, um damit zu beginnen.
BEARBEITEN:
Dieses Tutorial wird helfen. Ich verstehe, dass die Verwendung von "Android: textColorPrimary" mindestens API-Level 21 erfordert. Die Verwendung des gleichen Tags ohne "Android:" verwendet die Design-Support-Bibliothek. Jedes Widget für die Unterstützungsbibliothek versucht, das Element "textColorPrimary" anstelle von "Android: textColorPrimary" zu finden. Wenn dies nicht der Fall ist, wird der oben genannte Fehler ausgegeben.
Ich hatte auch den gleichen Fehler. In meinem Fall waren einige der Ressourcen nur in drawable-v21. Kopieren Sie diese Ressourcen auch in einen Zeichnungsordner. Dies löste das Problem für mich.
Caused by: Android.content.res.Resources$NotFoundException: Resource ID #0x0
Das ist das Hauptproblem.
Nun, ich versuchte diesen Fehler zu beheben. Und keiner hat für mich gearbeitet. Ich konnte die Lösung nicht herausfinden . Szenario:
Ich wollte gerade einen Navigation Drawer Project
in Android Studio 2.1.2 erstellen. Wenn ich versuche, das Standard-Android-Symbol in nav_header_main.xml
zu ändern, bekam ich einige seltsame Fehler. Ich fand heraus, dass ich mein PNG
-Logo in den ...\app\src\main\res\drawable-21
ablegte. Wenn ich versuche, mein PNG-Logo in ...\app\src\main\res\drawable
bam zu setzen! Alle seltsamen Fehler gehen weg.
Im Folgenden sind einige der Stack-Trace aufgeführt, als ich PNG in den drawable-21
-Ordner legte:
08-17 17:29:56.237 6644-6678/myAppName E/dalvikvm: Could not find class 'Android.util.ArrayMap', referenced from method com.Android.tools.fd.runtime.Restarter.getActivities
08-17 17:30:01.674 6644-6644/myAppName E/AndroidRuntime: FATAL EXCEPTION: main
Java.lang.RuntimeException: Unable to start activity ComponentInfo{myAppName.MainActivity}: Android.view.InflateException: Binary XML file line #16: Error inflating class <unknown>
at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2372)
at Android.app.ActivityThread.handleLaunchActivity(ActivityThread.Java:2424)
at Android.app.ActivityThread.handleRelaunchActivity(ActivityThread.Java:3956)
at Android.app.ActivityThread.access$700(ActivityThread.Java:169)
at Android.app.ActivityThread$H.handleMessage(ActivityThread.Java:1394)
at Android.os.Handler.dispatchMessage(Handler.Java:107)
at Android.os.Looper.loop(Looper.Java:194)
at Android.app.ActivityThread.main(ActivityThread.Java:5433)
at Java.lang.reflect.Method.invokeNative(Native Method)
at Java.lang.reflect.Method.invoke(Method.Java:525)
at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:924)
at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:691)
at dalvik.system.NativeStart.main(Native Method)
Caused by: Android.view.InflateException: Binary XML file line #16: Error inflating class <unknown>
at Android.view.LayoutInflater.createView(LayoutInflater.Java:613)
at Android.view.LayoutInflater.createViewFromTag(LayoutInflater.Java:687)
at Android.view.LayoutInflater.rInflate(LayoutInflater.Java:746)
at Android.view.LayoutInflater.inflate(LayoutInflater.Java:489)
at Android.view.LayoutInflater.inflate(LayoutInflater.Java:396)
at Android.view.LayoutInflater.inflate(LayoutInflater.Java:352)
at Android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.Java:280)
at Android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.Java:140)
at edu.uswat.fwd82.findmedoc.MainActivity.onCreate(MainActivity.Java:22)
at Android.app.Activity.performCreate(Activity.Java:5179)
at Android.app.Instrumentation.callActivityOnCreate(Instrumentation.Java:1146)
at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2336)
at Android.app.ActivityThread.handleLaunchActivity(ActivityThread.Java:2424)
at Android.app.ActivityThread.handleRelaunchActivity(ActivityThread.Java:3956)
at Android.app.ActivityThread.access$700(ActivityThread.Java:169)
at Android.app.ActivityThread$H.handleMessage(ActivityThread.Java:1394)
at Android.os.Handler.dispatchMessage(Handler.Java:107)
at Android.os.Looper.loop(Looper.Java:194)
at Android.app.ActivityThread.main(ActivityThread.Java:5433)
at Java.lang.reflect.Method.invokeNative(Native Method)
at Java.lang.reflect.Method.invoke(Method.Java:525)
at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:924)
at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:691)
at dalvik.system.NativeStart.main(Native Method)
Caused by: Java.lang.reflect.InvocationTargetException
at Java.lang.reflect.Constructor.constructNative(Native Method)
at Java.lang.reflect.Constructor.newInstance(Constructor.Java:417)
at Android.view.LayoutInflater.createView(LayoutInflater.Java:587)
at Android.view.LayoutInflater.createViewFromTag(LayoutInflater.Java:687)
at Android.view.LayoutInflater.rInflate(LayoutInflater.Java:746)
at Android.view.LayoutInflater.inflate(LayoutInflater.Java:489)
at Android.view.LayoutInflater.inflate(LayoutInflater.Java:396)
at Android.view.LayoutInflater.inflate(LayoutInflater.Java:352)
at Android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.Java:280)
at Android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.Java:140)
at edu.uswat.fwd82.findmedoc.MainActivity.onCreate(MainActivity.Java:22)
at Android.app.Activity.performCreate(Activity.Java:5179)
at Android.app.Instrumentation.callActivityOnCreate(Instrumentation.Java:1146)
at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2336)
at Android.app.ActivityThread.handleLaunchActivity(ActivityThread.Java:2424)
at Android.app.ActivityThread.handleRelaunchActivity(ActivityThread.Java:3956)
at Android.app.ActivityThread.access$700(ActivityThread.Java:169)
at Android.app.ActivityThread$H.handleMessage(ActivityThread.Java:1394)
at Android.os.Handler.dispatchMessage(Handler.Java:107)
at Android.os.Looper.loop(Looper.Java:194)
at Android.app.ActivityThread.main(ActivityThread.Java:5433)
at Java.lang.reflect.Method.invokeNative(Native Method)
at Java.lang.reflect.Method.invoke(Method.Java:525)
at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:924)
at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:691)
at dalvik.system.NativeStart.main(Native Method)
Caused by: Android.view.InflateException: Binary XML file line #14: Error inflating class ImageView
at Android.view.LayoutInflater.createViewFromTag(LayoutInflater.Java:704)
at Android.view.LayoutInflater.rInflate(LayoutInflater.Java:746)
at Android.view.LayoutInflater.inflate(LayoutInflater.Java:489)
at Android.view.LayoutInflater.inflate(LayoutInflater.Java:396)
at Android.support.design.internal.NavigationMenuPresenter.inflateHeaderView(NavigationMenuPresenter.Java:189)
at Android.support.design.widget.NavigationView.inflateHeaderView(NavigationView.Java:262)
at Android.support.design.widget.NavigationView.<init>(NavigationView.Java:173)
at Android.support.design.widget.NavigationView.<init>(NavigationView.Java:95)
at Java.lang.reflect.Constructor.constructNative(Native Method)
at Java.lang.reflect.Constructor.newInstance(Constructor.Java:417)
at Android.view.LayoutInflater.createView(LayoutInflater.Java:587)
at Android.view.LayoutInflater.createViewFromTag(LayoutInflater.Java:687)
at Android.view.LayoutInflater.rInflate(LayoutInflater.Java:746)
at Android.view.LayoutInflater.inflate(LayoutInflater.Java:489)
at Android.view.LayoutInflater.inflate(LayoutInflater.Java:396)
at Android.view.LayoutInflater.inflate(LayoutInflater.Java:352)
at Android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.Java:280)
at Android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.Java:140)
at edu.uswat.fwd82.findmedoc.MainActivity.onCreate(MainActivity.Java:22)
at Android.app.Activity.performCreate(Activity.Java:5179)
at Android.app.Instrumentation.callActivityOnCreate(Instrumentation.Java:1146)
at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2336)
at Android.app.ActivityThread.handleLaunchActivity(ActivityThread.Java:2424)
at Android.app.ActivityThread.handleRelaunchActivity(ActivityThread.Java:3956)
at Android.app.ActivityThread.access$700(ActivityThread.Java:169)
at Android.app.ActivityThread$H.handleMessage(ActivityThread.Java:1394)
at Android.os.Handler.dispatchMessage(Handler.Java:107)
at Android.os.Looper.loop(Looper.Java:194)
at Android.app.ActivityThread.main(ActivityThread.Java:5433)
at Java.lang.reflect.Method.invokeNative(Native Method)
at Java.lang.reflect.Method.invoke(Method.Java:525)
at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:924)
at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:691)
at dalvik.system.NativeStart.main(Native Method)
Caused by: Java.lang.NullPointerException
at Android.content.res.ResourcesEx.getThemeDrawable(ResourcesEx.Java:459)
at Android.content.res.ResourcesEx.loadDrawable(ResourcesEx.Java:435)
at Android.content.res.TypedArray.getDrawable(TypedArray.Java:609)
at Android.widget.ImageView.<init>(ImageView.Java:120)
at Android.support.v7.widget.AppCompatImageView.<init>(AppCompatImageView.Java:57)
at Android.support.v7.widget.AppCompatImageView.<init>(AppCompatImageView.Java:53)
at Android.support.v7.app.AppCompatViewInflater.createView(AppCompatViewInflater.Java:106)
at Android.support.v7.app.AppCompatDelegateImplV7.createView(AppCompatDelegateImplV7.Java:980)
at Android.support.v7.app.AppCompatDelegateImplV7.onCreateView(AppCompatDelegateImplV7.Java:1039)
at Android.support.v4.view.LayoutInflaterCompatHC$FactoryWrapperHC.onCreateView(LayoutInflaterCompatHC.Java:44)
at Android.view.LayoutInflater.createViewFromTag(LayoutInflater.Java:
Wie Sie sehen können, umfasst die obige Stapelverfolgung:
Android.support.design.widget.NavigationView.inflateHeaderView (NavigationView.Java:262) unter Android.support.design.widget.NavigationView. (NavigationView.Java:173) unter Android.support.design.widget.NavigationView. (NavigationView.Java:95)
Ich hatte den gleichen Fehler, ich habe ihn behoben, indem ich app:itemTextColor="@color/a_color"
zu meiner Navigationsansicht hinzufügte:
<Android.support.design.widget.NavigationView
Android:id="@+id/navigation_view"
Android:layout_width="wrap_content"
Android:layout_height="match_parent"
Android:layout_gravity="left"
app:headerLayout="@layout/layout_drawer_header"
app:menu="@menu/drawer_menu"
app:itemTextColor="@color/primary"/>
Mit dieser Methode können Sie weiterhin Android:textColorPrimary
und Android:textColorSecondary
in Ihrem Design verwenden.
Ich habe das Downgrade in Gradle aus gelöst
compile 'com.Android.support:design:23.1.0'
zu
compile 'com.Android.support:design:23.0.1'
Anscheinend bekomme ich immer Probleme, wenn ich Komponenten von Android Studio aktualisiere. Müde davon werden.
Keine der oben genannten Korrekturen funktionierte für mich.
Was für mich funktionierte, veränderte sich
<item name="Android:textColorSecondary">#FFFFFF</item>
zu
<item name="Android:textColorSecondary">@color/colorWhite</item>
Sie müssen natürlich colorWhite zu Ihrer colors.xml hinzufügen
Die folgenden Schritte werden diesen Fehler sicher beseitigen.
Prost!!
Wie Parag Naik richtig erwähnt (und Lạng Hoàng erweitert sich), tritt das Problem auf, wenn textColorPrimary auf etwas anderes als eine Farbstatusliste gesetzt wird. Sie können textColorPrimary also als Statusliste festlegen. Im Android-Bugtracker gibt es ein Problem, dass colorPrimary eine Statusliste mit nur einer Farbe ist: https://code.google.com/p/Android/issues/detail?id=172353
Also für dein Theme in styles.xml:
<style name="Base.Theme.Hopster" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">@color/primary</item>
<item name="colorPrimaryDark">@color/primary_dark</item>
<item name="colorAccent">@color/accent</item>
<item name="Android:textColorPrimary">@color/primary_color_statelist</item>
</style>
Und die eigentliche primary_color_statelist.xml-Datei:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:Android="http://schemas.Android.com/apk/res/Android">
<!-- This is used when the Navigation Item is checked -->
<item Android:color="@color/primary_text_selected" Android:state_checked="true" />
<!-- This is the default text color -->
<item Android:color="@color/primary_text" />
</selector>
Bei mir ist dieser Fehler oft aufgetreten,
Fehler beim Aufblasen der Klasse Android.support.design.widget.NavigationView # 28 und # 29
Die Lösung, die für mich funktioniert, ist, dass Sie Ihre Supportdesign-Bibliothek und Ihre Support-Appcompat-Bibliothek anpassen müssen.
compile 'com.Android.support:appcompat-v7:23.1.1'
compile 'com.Android.support:design:23.1.1'
Für mich müssen sie passen. :) Für mich geht das!
Nur für diejenigen, die noch zu diesem Thema kommen. Ich bin zu dem gleichen Problem gekommen, aber alle Lösungen hier funktionieren nicht für mich.
Nehmen Sie einfach einen Blick auf die NavigationView-Klasse mit Cue von logcat. Ich fand das Problem aus dieser Codezeile:
itemTextColor = this.createDefaultColorStateList(16842806);
Es scheint also verwandt mit itemTextColor zu sein, wie Aenur56 erwähnt. Ich habe es mit der Lösung von Aenur56 versucht, aber es funktioniert nicht.
Schauen Sie sich die Codezeile oben an, ich stelle fest, dass es ColorStateList gibt. Also erstelle ich dann ein Set für itemTextColor, dann funktioniert es.
<selector xmlns:Android="http://schemas.Android.com/apk/res/Android">
<item Android:color="#00FF00" Android:state_checked="true" />
<item Android:color="#000000" />
</selector>
Ich hoffe es hilft!
In meinem Fall hatte ich den gleichen Fehler, wenn ich die App in einem Gerät mit KitKat API 19-Version ausführte. Ich habe das Problem herausgefunden. Ich hatte einige Drawable-Ressourcen, die sich im drawable-v21-Verzeichnis befanden (welches für Versionen von API 21 Lollipop verwendet wird). Ich habe einfach die gleichen Ressourcen in den "Drawable" -Ordner gestellt, um mit der Version unter API 21 zu arbeiten. Es funktioniert. Sie können es in das entsprechende Verzeichnis legen
Keine der oben genannten Lösungen hat mir geholfen. Ich habe dies auf einer anderen Webseite gefunden und es hat für mich funktioniert - "In project.properties der Designbibliothek als Ziel 21 oder höchstes verfügbares Objekt festlegen, dann bereinigen Sie das Design lib, appcomapt und Ihr Projekt und genießen Sie es."
Hoffe es wird helfen!
Dieser Fehler kann aus folgenden Gründen auftreten.
Dieses Problem wird wahrscheinlich auftreten, wenn die Version Ihrer Appcompat-Bibliothek und Design-Unterstützungsbibliothek nicht mit ..__ übereinstimmt
compile 'com.Android.support:appcompat-v7:24.2.0' // appcompat library
compile 'com.Android.support:design:24.2.0' //design support library
Wenn Ihre Designdatei in Stilen nur diese beiden hat,
<item name="colorPrimary">#4A0958</item>
<item name="colorPrimaryDark">#4A0958</item>
dann fügen Sie auch ColorAccent hinzu. Es sollte ungefähr so aussehen.
<style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">#4A0958</item>
<item name="colorPrimaryDark">#4A0958</item>
<item name="colorAccent">#4A0958</item>
</style>
Ich hatte auch das gleiche Problem, nachdem ich fast 3 Stunden gesucht hatte, fand ich heraus, dass das Problem in meiner drawable_menu.xml-Datei lag. Es wurde falsch geschrieben: D
Vergewissern Sie sich, dass sich Ihre Drawables für das Menü im richtigen Ordner befinden. In meinem Ordner drawable v21 wurde ein Nullzeiger auf die Ressource angezeigt.
Problem beim Kauf meiner Icons in Zeichnungsordner behoben
Ich hatte das gleiche Problem nach dem Upgrade der Support-Bibliothek und keine der Antworten funktionierte für mich. Schließlich habe ich das Herunterladen der neuesten Version von Build-Tools und das Upgrade in build.gradle auf buildToolsVersion "23.0.1"
behoben.
BESSER I UPGRADED com.Android.support:appcompat-v7:23.1.0
wie @Ton sagte downgrade compile 'com.Android.support:design:23.1.0'
ABER warum nichtcom.Android.support:appcompat-v7:23.1.1
aktualisieren?
Letztes Upgrade funktionierte für mich viel Spaß
compile 'com.Android.support:appcompat-v7:23.1.1'
compile 'com.Android.support:design:23.1.1'
Warum also ältere Bibliothek verwenden? Ich denke, jetzt ist es besser, sowohl Design als auch kompaktes Upgrade zu verwenden.
Es ist seltsam, aber sauberes Projekt und Wiederaufbauprojekt hat für mich funktioniert.
Ich fand die Lösung ... Wenn Sie die App verwendet haben: srcCompat zu Android ändern: src Diese Lösung funktionierte für mich :)
Wenn Sie bereits zu androidx
migriert haben, sollten Sie Ihr Layout xml Von ändern
<Android.support.design.widget.NavigationView ... />
zu
<com.google.Android.material.navigation.NavigationView ... />
Eine Sache, die Sie noch einmal überprüfen sollten, ist, dass Sie Ihr Design in Ihrer AndroidManifest.xml-Datei korrekt angewendet haben. In meinem Fall hatte ich das Attribut Android: theme weggelassen. Z.B:
<application ... Android:theme="@style/Your.Theme.Here" ... >
Allgemeiner Weg zur Lösung von Problemen wie Error inflating class X
:
Resources$NotFoundException
wie folgt aussehen:Caused by: Android.content.res.Resources$NotFoundException: Resource ID #0x7f0b0066 at Android.content.res.ResourcesImpl.getValue(ResourcesImpl.Java:190) at Android.content.res.Resources.loadXmlResourceParser(Resources.Java:2094) at Android.content.res.Resources.getLayout(Resources.Java:1111) at Android.view.LayoutInflater.inflate(LayoutInflater.Java:424)
Resource ID
ist eigentlich eine ganze Zahl aus der generierten R.Java-Datei.0x7f0b0066
, der auf die XML-Datei verweist, die nicht aufgeblasen werden konnte (gefunden).layout
nicht über diese Ressource verfügt, jedoch einige layout-XXX
.layout
.