Postępowałem zgodnie z samouczkiem dotyczącym nowego składnika NavigationView w bibliotece projektów pomocy technicznej i nie mogę przejść przez ten komunikat o błędzie:
Error inflating class android.support.design.widget.NavigationView
Próbowałem tutaj każdego obejścia
Błąd podczas korzystania z jakichkolwiek elementów biblioteki obsługi projektów Androida
ale komunikat o błędzie nadal istnieje.
xml
<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>
build.gradle
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'
}
Projekt build.gradle
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.2.3'
}
}
style.xml
<?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>
Każda pomoc będzie mile widziana!
Edycja - dodaj @ menu / drawer & @ menu / drawer_header & stacktrace
drawer.xml
<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>
drawer_header.xml
<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>
StackTrace (tylko część z nich)
Wyrzucił trzy wyjątki, jak poniżej: wszystkie wskazują, że przyczyną problemów jest wiersz „setContentView (layout)” w pliku layout.xml.
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
@layout/drawer_header
i XML@menu/drawer
?Odpowiedzi:
Właściwie nie jest to kwestia
primarycolortext
aktualizacji, aktualizacji lub obniżenia poziomu zależności. Ten problem prawdopodobnie wystąpi, gdy wersja Twojejappcompat
biblioteki i biblioteki wsparcia projektowania nie są zgodne.Przykład dopasowania warunku
compile 'com.android.support:appcompat-v7:23.1.1' // appcompat library compile 'com.android.support:design:23.1.1' //design support library
źródło
def supportVersion = '25.1.0' compile "com.android.support:appcompat-v7:$supportVersion" compile "com.android.support:design:$supportVersion"
support of version 26
. Używam'com.android.support:appcompat-v7:26.1.0'
. Jest26.1.0
poprawne?Miałem podobny błąd. Kiedy używam
<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>
działa u mnie, gdy usuwam elementy motywu android: textColorPrimary i android: textColorSecondary.
<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>
Na początek spróbuj pracować z bardzo prostym motywem aplikacji.
EDYTOWAĆ:
Ten poradnik pomoże. Rozumiem, że używanie „android: textColorPrimary” wymaga interfejsu API na poziomie minimum 21. Używanie tego samego tagu bez „android:” używa biblioteki obsługi projektowania. Każdy widżet biblioteki obsługi będzie próbował znaleźć element „textColorPrimary” zamiast „android: textColorPrimary” i jeśli nie znajdzie tego samego, zgłasza wspomniany powyżej błąd.
źródło
Miałem też ten sam błąd. W moim przypadku niektóre zasoby były dostępne tylko w wersji 21. Skopiuj te zasoby również do folderu do rysowania. To rozwiązało problem.
Caused by: android.content.res.Resources$NotFoundException: Resource ID #0x0
To jest główny problem.
źródło
vector
wv21
folderze nie było nic odpowiadającego. Dzięki.Jeśli już przeprowadziłeś migrację do
androidx
, powinieneś zmienić plik XML układu z<android.support.design.widget.NavigationView ... />
do
<com.google.android.material.navigation.NavigationView ... />
źródło
Miałem ten sam błąd, rozwiązałem go, dodając
app:itemTextColor="@color/a_color"
do widoku nawigacji:<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"/>
Nadal możesz używać
android:textColorPrimary
iandroid:textColorSecondary
w swoim motywie za pomocą tej metody.źródło
Cóż, więc próbowałem naprawić ten błąd. I żaden nie pracował dla mnie. Nie udało mi się znaleźć rozwiązania. Scenariusz:
Właśnie zamierzałem zrobić
Navigation Drawer Project
wewnętrzne Android Studio 2.1.2. A kiedy próbowałem zmienić domyślną ikonę Androidanav_header_main.xml
, otrzymywałem dziwne błędy. Zorientowałem się, że upuszczam mojePNG
logo w...\app\src\main\res\drawable-21
. Kiedy próbuję umieścić moje logo PNG w...\app\src\main\res\drawable
bam! Wszystkie dziwne błędy znikają.Oto niektóre ślady stosu, gdy umieszczałem PNG w
drawable-21
folderze: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:
Jak widać, powyższy ślad stosu obejmuje:
źródło
Rozwiązałem to, obniżając stopień z
compile 'com.android.support:design:23.1.0'
do
compile 'com.android.support:design:23.0.1'
Wygląda na to, że zawsze mam problemy, gdy aktualizuję dowolny składnik Android Studio. Męczę się tym.
źródło
Żadna z powyższych poprawek nie zadziałała dla mnie.
To, co działało, zmieniało się
<item name="android:textColorSecondary">#FFFFFF</item>
do
<item name="android:textColorSecondary">@color/colorWhite</item>
Oczywiście musisz dodać colorWhite do swojego colors.xml
źródło
Wykonanie poniższych czynności z pewnością usunie ten błąd.
Twoje zdrowie!!
źródło
Jak słusznie wspomina Parag Naik (a Lạng Hoàng rozwija się dalej), problem pojawia się podczas ustawiania textColorPrimary na coś innego niż lista stanów kolorów. Możesz więc ustawić textColorPrimary jako listę stanów. W narzędziu do śledzenia błędów systemu Android występuje problem, że colorPrimary jest listą stanów z tylko jednym kolorem: https://code.google.com/p/android/issues/detail?id=172353
Więc dla twojego motywu w 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>
I rzeczywisty plik primary_color_statelist.xml:
<?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>
źródło
W moim przypadku miałem ten sam błąd, gdy uruchomiłem aplikację na urządzeniu w wersji KitKat API 19. Rozwiązałem problem; Miałem kilka zasobów do rysowania, które znajdowały się w katalogu drawable-v21 (który jest używany w wersjach z API 21 Lollipop). Po prostu umieściłem te same zasoby w folderze „Drawable”, aby pracować z wersją poniżej API 21. To działa. Możesz umieścić go w odpowiednim katalogu
źródło
U mnie wielokrotnie napotkałem ten błąd,
Błąd podczas pompowania klas android.support.design.widget.NavigationView # 28 i # 29
Rozwiązanie, które mi pasuje, polega na tym, że musisz dopasować swoją bibliotekę projektów wsparcia i bibliotekę obsługi aplikacji.
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:design:23.1.1'
Dla mnie muszą pasować. :) Mi to pasuje!
źródło
Tylko dla tych, którzy nadal zajmują się tym problemem. Dotarłem do tego samego problemu, ale wszystkie rozwiązania tutaj nie działają.
Wystarczy spojrzeć na klasę NavigationView z cue z logcat, znalazłem problem z tej linii kodu:
itemTextColor = this.createDefaultColorStateList(16842806);
Wydaje się więc, że jest to związane z itemTextColor, jak wspomniał Aenur56. Próbowałem więc z rozwiązaniem Aenur56, ale to nie działa.
Spójrz na wiersz powyższego kodu, zauważyłem, że jest tam ColorStateList. Więc tworzę jeden, a następnie ustawiam dla itemTextColor, a potem działa.
<selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:color="#00FF00" android:state_checked="true" /> <item android:color="#000000" /> </selector>
Mam nadzieję, że to pomoże!
źródło
Żadne z powyższych rozwiązań mi nie pomogło. Znalazłem to na innej stronie internetowej i zadziałało - „W project.properties biblioteki projektowej ustaw cel na 21 lub najwyższy dostępny, a następnie wyczyść bibliotekę projektu, appcomapt i swój projekt i ciesz się”
Mam nadzieję, że to pomoże!
źródło
Upewnij się, że obiekty do rysowania dla menu znajdują się we właściwym folderze, w moim miejscu, gdzie zostało umieszczone w drawablev21, dlatego spowodowało to zerowanie wskaźnika do zasobu.
Naprawiono to, że przenoszę moje ikony do folderu drawables
źródło
Miałem ten sam problem po aktualizacji biblioteki wsparcia i żadna z odpowiedzi nie działała dla mnie. Wreszcie rozwiązałem pobieranie najnowszej wersji narzędzi do kompilacji i aktualizację w build.gradle do
buildToolsVersion "23.0.1"
źródło
Należy dokładnie sprawdzić, czy motyw został poprawnie zastosowany w pliku AndroidManifest.xml. W moim przypadku pominąłem atrybut android: theme . Na przykład:
<application ... android:theme="@style/Your.Theme.Here" ... >
źródło
LEPSZE ULEPSZONO
com.android.support:appcompat-v7:23.1.0
jak powiedział @Ton downgrade
compile 'com.android.support:design:23.1.0'
ALE Dlaczego nie zaktualizować
com.android.support:appcompat-v7:23.1.1
Ostateczna aktualizacja zadziałała dla mnie
compile 'com.android.support:appcompat-v7:23.1.1' compile 'com.android.support:design:23.1.1'
Dlaczego więc używać starszej biblioteki. Myślę, że teraz lepiej jest używać zarówno projektu, jak i kompaktowego ulepszenia.
źródło
Miałem też ten sam problem, po obejrzeniu prawie 3 godzin stwierdziłem, że problem był w moim pliku drawable_menu.xml, był źle napisany: D
źródło
Ten błąd może być spowodowany przyczynami wymienionymi poniżej.
Ten problem prawdopodobnie wystąpi, gdy wersja biblioteki appcompat i biblioteki obsługi projektowania nie są zgodne. Przykład dopasowania warunku
compile 'com.android.support:appcompat-v7:24.2.0' // appcompat library compile 'com.android.support:design:24.2.0' //design support library
Jeśli plik motywu w stylach zawiera tylko te dwa,
<item name="colorPrimary">#4A0958</item> <item name="colorPrimaryDark">#4A0958</item>
następnie dodaj również ColorAccent. Powinien wyglądać mniej więcej tak.
<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>
źródło
Ogólny sposób rozwiązywania problemów, takich jak
Error inflating class X
:Resources$NotFoundException
tak:Resource ID
jest w rzeczywistości dokładną liczbą całkowitą z wygenerowanego pliku R.java.0x7f0b0066
który będzie wskazywał na plik xml, którego nie można zawyżać (znaleźć).layout
dzieje się tak, ponieważ katalog nie ma tego zasobu, ale niektórelayout-XXX
mają.layout
.źródło
To dziwne, ale czysty projekt i projekt przebudowy zadziałały dla mnie.
źródło
W moim przypadku miałem
<android.support.design.widget.NavigationView...
i w konfiguracji aplikacji:
implementation 'com.google.android.material:material:1.1.0' implementation 'androidx.appcompat:appcompat:1.1.0'
Więc zmieniłem XML na:
com.google.android.material.navigation.NavigationView...
źródło
Znalazłem rozwiązanie ... jeśli użyłeś app: srcCompat zmień na android: src to rozwiązanie zadziałało dla mnie :)
źródło
Miałem do czynienia z tym błędem w oprogramowaniu Xamarin. Było to spowodowane niektórymi plikami, które znajdowały się w folderze drawable-v21 . Więc skopiowałem te pliki (prawdopodobnie pliki ikon) do folderu do rysowania i błąd zniknął.
źródło