त्रुटि वर्ग Android.support.design.widget.NavigationView को फुलाते हुए


87

मैंने समर्थन डिज़ाइन लाइब्रेरी में नए घटक नेविगेशन व्यू के एक ट्यूटोरियल का अनुसरण किया और इस त्रुटि संदेश के माध्यम से प्राप्त नहीं कर सकता:

Error inflating class android.support.design.widget.NavigationView

मैंने यहां हर वर्कअराउंड की कोशिश की

किसी भी Android डिज़ाइन समर्थन लाइब्रेरी तत्वों का उपयोग करते समय त्रुटि

लेकिन त्रुटि संदेश अभी भी मौजूद है।

एक्सएमएल

<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'
}

प्रोजेक्ट बिल्ड.ग्रेडल

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.2.3'
    }
}

styles.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>

किसी भी सहायता की सराहना की जाएगी!

संपादित करें - @ मेनू / दराज और @ मेनू / ड्राअर_हेडर और स्टैकट्रेस जोड़ें

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 (उनमें से केवल एक हिस्सा)

यह नीचे दिए गए तीन अपवादों को बाहर निकालता है: सभी बताते हैं कि लेआउट "xml" में समस्याएं "setContentView (लेआउट)" की रेखा के कारण होती हैं।

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

क्या आप xml @layout/drawer_headerऔर xml भी पोस्ट कर सकते हैं @menu/drawer?
TheoK

इसके अलावा, कृपया पूरे स्टैक ट्रेस को पोस्ट करें।
कॉमन्सवेयर

@ TheoK मैं अपने प्रश्न को संपादित करता हूं ~ धन्यवाद
pptang

खैर, यह आपके संसाधनों में से एक नहीं मिल सकता है। मैं नहीं जानता, जो, हालांकि।
कॉमन्सवेयर

मुझे इसका सामना करना पड़ा क्योंकि मैंने कुछ कोड रिफलेक्ट किए। मूल रूप से मैंने पैरेंटफ्रैगमेंट नामक पैरेंट को अधिक सटीक होने के लिए रिफ्लेक्ट किया और एंड्रॉइड स्टूडियो ने स्टाइल.एक्सएमएल में भी बदलाव किया। माता-पिता को शैली को ठीक करना था = "<जो भी आधार-वर्ग>" और फिर से काम किया।
सैफुर रहमान मोहसिन

जवाबों:


83

वास्तव में यह primarycolortextनिर्भरता के उन्नयन, अपग्रेड या डाउनग्रेड करने की बात नहीं है। यह समस्या तब होगी जब आपकी appcompatलाइब्रेरी और डिज़ाइन समर्थन लाइब्रेरी का संस्करण मेल नहीं खाता हो।

मैचिंग कंडीशन का उदाहरण

compile 'com.android.support:appcompat-v7:23.1.1' // appcompat library
compile 'com.android.support:design:23.1.1'       //design support library

क्या आप मुझे समझा सकते हैं कि मेरे जैसे नौसिखिया के लिए इस समस्या का पता कैसे लगाया जा सकता है :)
जेरोम 2606

यदि आप हमेशा अपने ऐप / बिल्ड में इस तरह की चीजों के लिए एक चर घोषित करते हैं। तो आप अपने आप को बदलने से रोकने के लिए रोकते हैं, जैसे कि:def supportVersion = '25.1.0' compile "com.android.support:appcompat-v7:$supportVersion" compile "com.android.support:design:$supportVersion"
riper

3
मेरे द्वारा उपयोग किए गए दोनों पुस्तकालय समान हैं लेकिन फिर भी समान त्रुटि हो रही है। नीचे दिए गए कोड संकलित करें 'com.android.support:appcompat-v7:23.4.0' संकलन 'com.android.support:design:23.4.0'
माया मोहित

1
मुझे उपयोग करना चाहिए support of version 26। मैं उपयोग कर रहा हूं 'com.android.support:appcompat-v7:26.1.0'। है 26.1.0सही?
निम्मगड्डा गौतम

कंपाइलडस्क वर्जन 25 बिल्डटल्सवर्जन '26 .0.2 'के साथ ग्रैड 4.1 पर त्रुटि का सामना करना पड़ा और' com.android.support:appcompat-v7:23.0.0 'संकलन' com.android.support.design:23.0.0 'संकलन' com.android 'संकलन करें। .support: support-v4: 23.0.0 'संकलित परिवर्तन नीचे' com.android.support:appcompat-v7:25.0.0 'संकलन' com.android.support:design:25.0.0 'संकलन' com.android संकलित करें। .support: support-v4:
25.0.0

45

मेरी भी ऐसी ही त्रुटि थी। जब मैं उपयोग करता हूं

<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>

मेरे लिए काम करता है जब मैं एंड्रॉइड हटाता हूं: textColorPrimary और 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>

शुरू करने के लिए एक बहुत ही सरल ऐप थीम के साथ काम करने की कोशिश करें।

संपादित करें:

यह ट्यूटोरियल मदद करेगा। मेरी समझ यह है कि "android: textColorPrimary" का उपयोग करने के लिए न्यूनतम एपीआई स्तर 21 की आवश्यकता होती है। "एंड्रॉइड:" के बिना एक ही टैग का उपयोग करना डिज़ाइन समर्थन लाइब्रेरी का उपयोग करता है। कोई भी समर्थन लाइब्रेरी विजेट "android: textColorPrimary" के बजाय "textColorPrimary" आइटम को खोजने का प्रयास करेगा और यदि वह इसे खोजने में विफल रहता है तो यह उपर्युक्त त्रुटि को फेंकता है।


धन्यवाद, यह एक आकर्षण की तरह काम करता है !!!! लेकिन क्या आप जानते हैं कि हमें इन दोनों विशेषताओं को क्यों हटाना चाहिए ??
पीपींग

4
मेरे पास ये दो विशेषताएँ कभी नहीं थीं, और अभी भी मुझे वही त्रुटि मिलती है। कोई विचार?
शुभम चौधरी

1
मेरे लिए यह अभी भी विफल रहता है, भले ही मैं एंड्रॉइड जोड़ता हूं: textColorPrimary मूल्यों में-v21 / styl.xml
डेविड

1
कृपया उस उत्तर पर विचार करें जो बालमन रावत ने नीचे दिया है। मेरे मामले में मुझे दोनों उत्तर लागू करने थे।
NewestStackOverflowUser

@Parag Naik आपने मेरा हफ्ता बचाया धन्यवाद :) मुझे इस समुदाय से प्यार है।
यासीन काकमाज़

41

मेरी भी यही त्रुटि थी। मेरे मामले में कुछ संसाधन केवल ड्रॉबल-वी 21 में थे। उन संसाधनों को ड्रा करने योग्य फ़ोल्डर में भी कॉपी करें। इससे मेरे लिए समस्या हल हो गई।

Caused by: android.content.res.Resources$NotFoundException: Resource ID #0x0 

यह मुख्य समस्या है।


2
हाँ। मेरे लिए भी ऐसा। फ़ोल्डर vectorमें एक का उपयोग कर एक खींचने योग्य XML फ़ाइल v21थी और <21 मानक फ़ोल्डर में संबंधित कुछ भी नहीं है। धन्यवाद।
जॉय

1
मौके पर .. मैंने चित्र को एक्सकेबल-एक्सएक्सएक्स में जोड़ा, लेकिन ड्रॉएबल में नहीं। वह मुद्दा था
राहुल हव्वे

1
बहुत बहुत धन्यवाद मेरे चयनकर्ता। xml और अन्य xml फ़ाइल भी थी। मैं इसे कॉपी करता हूं और समस्या को बचाता हूं
मोहम्मद

27

यदि आप पहले ही माइग्रेट कर चुके हैं androidx, तो आपको अपना लेआउट xml बदल देना चाहिए

<android.support.design.widget.NavigationView ... />

सेवा

<com.google.android.material.navigation.NavigationView ... />

15

मेरे पास एक ही त्रुटि थी, मैंने इसे app:itemTextColor="@color/a_color"अपने नेविगेशन दृश्य में जोड़कर हल किया :

<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"/>

आप अभी भी android:textColorPrimaryऔर android:textColorSecondaryइस विधि के साथ अपने विषय में उपयोग कर सकते हैं ।


मैंने आपके वर्कअराउंड को यहाँ से आज़माया है , लेकिन अभी भी वही त्रुटि संदेश मिला है। फिर भी आपकी सहायता के लिए धन्यवाद।
पीपींग

15

वैसे तो मैं इस त्रुटि को ठीक करने की कोशिश कर रहा था। और मेरे लिए कोई काम नहीं किया। मैं समाधान का पता लगाने में सक्षम नहीं था। परिदृश्य:

मैं बस एक Navigation Drawer Projectएंड्रॉइड स्टूडियो 2.1.2 के अंदर जा रहा था और जब मैंने डिफ़ॉल्ट एंड्रॉइड आइकन को बदलने की कोशिश की तो मुझे nav_header_main.xmlकुछ अजीब त्रुटियां हो रही थीं। मुझे लगा कि मैं अपने PNGलोगो को छोड़ रहा हूँ ...\app\src\main\res\drawable-21। जब मैं अपने PNG लोगो को ...\app\src\main\res\drawableBAM में डालने की कोशिश करता हूँ ! सभी अजीब त्रुटियां दूर हो जाती हैं।

जब मैं drawable-21फ़ोल्डर में PNG डाल रहा था तो कुछ स्टैक ट्रेस निम्नलिखित हैं :

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:2424at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:3956at android.app.ActivityThread.access$700(ActivityThread.java:169at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1394at android.os.Handler.dispatchMessage(Handler.java:107at android.os.Looper.loop(Looper.java:194at android.app.ActivityThread.main(ActivityThread.java:5433at java.lang.reflect.Method.invokeNative(Native Method) 
                                                                             at java.lang.reflect.Method.invoke(Method.java:525at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:924at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:691at 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:687at android.view.LayoutInflater.rInflate(LayoutInflater.java:746at android.view.LayoutInflater.inflate(LayoutInflater.java:489at android.view.LayoutInflater.inflate(LayoutInflater.java:396at android.view.LayoutInflater.inflate(LayoutInflater.java:352at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:280at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140at edu.uswat.fwd82.findmedoc.MainActivity.onCreate(MainActivity.java:22at android.app.Activity.performCreate(Activity.java:5179at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1146at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2336at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2424at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:3956at android.app.ActivityThread.access$700(ActivityThread.java:169at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1394at android.os.Handler.dispatchMessage(Handler.java:107at android.os.Looper.loop(Looper.java:194at android.app.ActivityThread.main(ActivityThread.java:5433at java.lang.reflect.Method.invokeNative(Native Method) 
                                                                             at java.lang.reflect.Method.invoke(Method.java:525at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:924at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:691at 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:417at android.view.LayoutInflater.createView(LayoutInflater.java:587at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687at android.view.LayoutInflater.rInflate(LayoutInflater.java:746at android.view.LayoutInflater.inflate(LayoutInflater.java:489at android.view.LayoutInflater.inflate(LayoutInflater.java:396at android.view.LayoutInflater.inflate(LayoutInflater.java:352at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:280at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140at edu.uswat.fwd82.findmedoc.MainActivity.onCreate(MainActivity.java:22at android.app.Activity.performCreate(Activity.java:5179at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1146at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2336at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2424at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:3956at android.app.ActivityThread.access$700(ActivityThread.java:169at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1394at android.os.Handler.dispatchMessage(Handler.java:107at android.os.Looper.loop(Looper.java:194at android.app.ActivityThread.main(ActivityThread.java:5433at java.lang.reflect.Method.invokeNative(Native Method) 
                                                                             at java.lang.reflect.Method.invoke(Method.java:525at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:924at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:691at 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:

जैसा कि आप देख सकते हैं उपरोक्त स्टैक ट्रेस में शामिल हैं:

android.support.design.widget.NavigationView.inflateHeaderView (androidView.java:262 पर) android.support.design.widget.NavigationView। (GPSView.java:173) android.support.design.widget.NavigationView (नेविगेशन दृश्य) पर देखें। जावा: 95)


1
बहुत अच्छा, उत्तर के लिए धन्यवाद। यह एक तरह का उत्तर प्रतीत होता है जिसे अन्य सभी पोस्टों में टाला गया था। मैं drawable-V21 बना सकते हैं और जब मैं पहले से ही drawable फ़ोल्डर था वहाँ के सभी स्थापित करने के लिए कोशिश कर रहा था और सिर्फ वहाँ यह जगह करना पड़ा
बल्ली से ढकेलना

11

मैं इसे हल से उन्नयन में हल कर दिया

compile 'com.android.support:design:23.1.0'

सेवा

compile 'com.android.support:design:23.0.1'

ऐसा लगता है कि जब मैं Android स्टूडियो के किसी भी घटक को अपडेट करता हूं तो मुझे हमेशा समस्याएं आती हैं। इससे थकान हो रही है।


1
डिज़ाइन सपोर्ट लाइब्रेरी मुश्किल से एंड्रॉइड स्टूडियो से संबंधित है।
सोती

मुझे भी यही समस्या थी और मैं इसे डाउनग्रेड करके हल कर सकता था जैसा कि @Ton ने उल्लेख किया है। वास्तव में पता नहीं है कि कैसे समर्थन लाइब्रेरी एंड्रॉइड स्टूडियो प्लगइन और प्लेटफ़ॉर्म अपडेट से संबंधित है, लेकिन हर बार जब मैं कुछ अपडेट करता हूं या कोई अन्य मेरे लिए काम नहीं करता है। मैं वास्तव में इस उत्तर का सुझाव देता हूं।
सरसचंद्र

1
अपग्रेड करने के बजाय मैंने कॉम्पैक्ट को 23.1.0 से अपग्रेड किया। मुझे लगता है कि नई लाइब्रेरी का उपयोग करने के लिए सबसे अच्छा है मेरा जवाब stackoverflow.com/a/38141666/3172518 से
करण

8

उपरोक्त सुधारों में से किसी ने भी मेरे लिए काम नहीं किया।

मेरे लिए जो काम कर रहा था वह बदल रहा है

<item name="android:textColorSecondary">#FFFFFF</item>

सेवा

<item name="android:textColorSecondary">@color/colorWhite</item>

आपको स्पष्ट रूप से अपने color.xml में colorWhite जोड़ना होगा


8

नीचे दिए गए कदम निश्चित रूप से इस त्रुटि को दूर करेंगे।

  • त्रुटि पैदा करने वाले विजेट का पता लगाएं।
  • उस विजेट फ़ाइल पर जाएं जहां उस विजेट को घोषित किया गया है।
  • उस फ़ाइल में उपयोग किए गए सभी संसाधनों (ड्राबल्स आदि) की जांच करें।
  • फिर सुनिश्चित करें कि सभी प्रकार के ड्रॉबल्स (drawable-v21, drawable आदि) में संसाधन है।

चीयर्स !!


5

जैसा कि पराग नाइक ने सही ढंग से उल्लेख किया है (और लोंग होंग पर विस्तार किया गया है), रंग राज्य सूची के अलावा किसी अन्य चीज के लिए TextColorPrimary सेट करते समय समस्या उत्पन्न होती है। तो आप राज्य सूची के रूप में textColorPrimary सेट कर सकते हैं। एंड्रॉइड बग ट्रैकर में एक समस्या है कलरप्रीमरी के बारे में केवल एक रंग के साथ एक राज्य सूची है: https://code.google.com/p/android/issues/detail?id=172353

तो अपने विषय के लिए style.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>

और वास्तविक 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>

5

मेरे मामले में, मुझे वही त्रुटि हुई जब मैंने किटकैट एपीआई 19 संस्करण डिवाइस में ऐप चलाया। मैने समस्या के बारे में पता लगाया; मेरे पास कुछ आकर्षित करने योग्य संसाधन थे जो कि ड्रॉबल-वी 21 डायरेक्टरी में थे (जो कि एपीआई 21 लॉलीपॉप से ​​संस्करणों के लिए उपयोग किया जाता है)। मैं सिर्फ एपीआई 21 के नीचे के संस्करण के साथ काम करने के लिए "ड्रॉबल" फ़ोल्डर में समान संसाधन डालता हूं। यह काम करता है। आप इसे संबंधित निर्देशिका पर रख सकते हैं


4

मेरे लिए, मुझे कई बार इस त्रुटि का सामना करना पड़ा,

कक्षा Android.support.design.widget.NavigationView # 28 और # 29 को फुलाते हुए त्रुटि हुई

मेरे लिए जो समाधान काम करता है वह यह है कि आपको अपने समर्थन डिजाइन पुस्तकालय और अपने समर्थन एप्कोमेट पुस्तकालय से मेल खाना चाहिए।

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

compile 'com.android.support:design:23.1.1'

मेरे लिए उन्हें मैच होना चाहिए। :) इससे मेरा काम बनता है!


3

बस किसके लिए अभी भी इस मुद्दे पर आते हैं। मैं एक ही समस्या के लिए मिल गया, लेकिन यहाँ सभी समाधान मेरे लिए काम नहीं कर रहे हैं।

बस logcat से क्यू के साथ नेविगेशन दृश्य वर्ग पर एक जैसे लगते हैं, मैं इस मुद्दे को कोड की इस लाइन के रूप में आया:

itemTextColor = this.createDefaultColorStateList(16842806);

इसलिए, यह आइटमटक्लोअर से संबंधित प्रतीत होता है जैसा कि एएनएन 56 का उल्लेख है। इसलिए मैंने Aenur56 के समाधान के साथ प्रयास किया लेकिन यह काम नहीं करता है।

उपरोक्त कोड की लाइन पर एक नज़र डालें, मुझे लगता है कि ColorStateList है। तो मैं एक बनाने के लिए फिर आइटमTextColor के लिए सेट तो यह काम करते हैं।

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:color="#00FF00" android:state_checked="true" />
    <item android:color="#000000" />
</selector>

आशा है कि यह मदद करेगा!


3

ऊपर दिए गए किसी भी समाधान ने मेरी मदद नहीं की। मुझे यह कुछ अन्य वेबपेज पर मिला और इसने मेरे लिए काम किया - "प्रोजेक्ट में। डिजाइन लाइब्रेरी के सेट टारगेट 21 या उच्चतम उपलब्ध हैं, फिर क्लीन डिजाइन लिब, एपकॉम और आपके प्रोजेक्ट और आनंद लें"

आशा है कि यह मदद करेगा!


प्रोजेक्ट लाइब्रेरी कहां है?
8oh8

2

सुनिश्चित करें कि मेनू के लिए आपके ड्रॉबल्स सही फ़ोल्डर में हैं, मेरा जहां drawablev21 में डाला गया है, इसलिए इसने संसाधन के लिए एक अशक्तता पैदा की।

फिक्स्ड यह फ़ोल्डर खींचने के लिए मेरे माउस को स्थानांतरित करने के लिए खरीदते हैं


1

मुझे समर्थन पुस्तकालय के उन्नयन के बाद भी यही समस्या थी और किसी भी उत्तर ने मेरे लिए काम नहीं किया। अंत में मैंने बिल्ड टूल्स के नवीनतम संस्करण को डाउनलोड करने और बिल्ड.ग्रेड में अपग्रेड करने का हल कियाbuildToolsVersion "23.0.1"


1

डबल-चेक करने के लिए एक बात यह है कि आपने अपनी थीम को अपने AndroidManifest.xml फ़ाइल में सही तरीके से लागू किया है। मेरे मामले में, मैंने Android: विषय विशेषता को छोड़ दिया था । उदाहरण के लिए:

<application ... android:theme="@style/Your.Theme.Here" ... >

1

बेहतर मैं UPGRADED com.android.support:appcompat-v7:23.1.0

जैसा कि @Ton ने डाउनग्रेड कहाcompile 'com.android.support:design:23.1.0'

लेकिन उन्नयन क्यों नहीं com.android.support:appcompat-v7:23.1.1

फाइनल अपग्रेड ने मुझे आनंद देने का काम किया

compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:design:23.1.1'

तो पुराने पुस्तकालय का उपयोग क्यों करें। मुझे लगता है कि अब डिज़ाइन और कॉम्पैक्ट अपग्रेड दोनों का उपयोग करना बेहतर है।


1
मैं अपने एक को अपग्रेड करता हूं, जैसे @Kan ने कैसे लिखा, और यह मेरे लिए काम करता है।
अलेक्सिसेनानी

1

मेरे पास भी यही समस्या थी, लगभग 3 घंटे देखने के बाद मुझे पता चला कि समस्या मेरी drawable_menu.xml फ़ाइल में थी, यह गलत लिखा गया था: D


1

नीचे दिए गए कारणों के कारण यह त्रुटि हो सकती है।

  1. यह समस्या संभावित रूप से तब होगी जब आपके एपकॉम लाइब्रेरी और डिजाइन सपोर्ट लाइब्रेरी का संस्करण मेल नहीं खाता है। मैचिंग कंडीशन का उदाहरण

     compile 'com.android.support:appcompat-v7:24.2.0' // appcompat library
    
     compile 'com.android.support:design:24.2.0' //design support library
    
  2. यदि शैलियों में आपकी थीम फ़ाइल में केवल यही दो हैं,

     <item name="colorPrimary">#4A0958</item>
     <item name="colorPrimaryDark">#4A0958</item>
    

फिर ColorAccent भी जोड़ें। इसे कुछ इस तरह देखना चाहिए।

 <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>

मैंने संपादित किया है। इसका मतलब यह है कि अगर यह मौजूद नहीं है तो ColorAccent भी जोड़ें।
विशाल पुरी

1

मुद्दों को हल करने का सामान्य तरीका Error inflating class X:

  1. चेक कारण स्टैक ट्रेस और Resources$NotFoundExceptionइस तरह होना चाहिए :
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)
  1. Resource ID वास्तव में उत्पन्न R.java फ़ाइल से पूर्णांक है।
  2. खोजें 0x7f0b0066जो xml फ़ाइल को इंगित करेगा जिसे फुलाया नहीं जा सकता (पाया गया)।
  3. ज्यादातर मामलों में ऐसा इसलिए है क्योंकि निर्देशिका layoutमें यह संसाधन नहीं है, लेकिन कुछlayout-XXX पास है।
  4. और समाधान सभी आवश्यक निर्देशिकाओं में संसाधन डालना है। या कम से कम में layout

1

यह अजीब है, लेकिन स्वच्छ परियोजना और पुनर्निर्माण परियोजना मेरे लिए काम करती है।


1

मेरे मामले में मेरे पास था

<android.support.design.widget.NavigationView...

और एप्लिकेशन कॉन्फिग में:

implementation 'com.google.android.material:material:1.1.0'
implementation 'androidx.appcompat:appcompat:1.1.0'

इसलिए मैंने XML को इसमें बदल दिया:

com.google.android.material.navigation.NavigationView...

यह androidx धन्यवाद माइग्रेट करने के बाद सही है
स्टार्क

0

मुझे समाधान मिला ... यदि आपने ऐप का उपयोग किया: srcCompat को Android में बदलें: src इस समाधान ने मेरे लिए काम किया :)


0

मुझे Xamarin में इस त्रुटि का सामना करना पड़ रहा था। यह कुछ फ़ाइलों के कारण था जो कि drawable-v21 फ़ोल्डर में मौजूद थे । इसलिए मैंने उन फ़ाइलों (शायद आइकन फ़ाइलों) को प्रतिलिपि करने योग्य फ़ोल्डर में कॉपी किया और त्रुटि चली गई।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.