DomingoMG
DomingoMG

Reputation: 1857

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

I have a problem with the design of my code and I do not know how to solve it.

My error:

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.**********/com.*********.activity_fragment.Fragment_1_Main}: android.view.InflateException: Binary XML file line #17: Error inflating class android.support.design.widget.NavigationView

I hope to solve this problem soon, I appreciate very much the participation to the resolution to my problem.

Here is my attempts I have already made and the code in the files

Stacktrace

04-15 15:02:06.842 23657-23657/? W/dalvikvm: threadid=1: thread exiting with uncaught exception (group=0x9ccfeb20)
04-15 15:02:06.842 23657-23657/? E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.************, PID: 23657
         java.lang.RuntimeException: Unable to start activity ComponentInfo{com.************/com.************.activity_fragment.Fragment_1_Main}: android.view.InflateException: Binary XML file line #17: Error inflating class android.support.design.widget.NavigationView
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
            at android.app.ActivityThread.access$800(ActivityThread.java:135)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:136)
            at android.app.ActivityThread.main(ActivityThread.java:5017)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:515)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)                                          
    at dalvik.system.NativeStart.main(Native Method)                                    
    Caused by: android.view.InflateException: Binary XML file line #17: Error inflating class android.support.design.widget.NavigationView                                       
    at android.view.LayoutInflater.createView(LayoutInflater.java:621)                                       
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:697)                                       
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:756)                                       
    at android.view.LayoutInflater.inflate(LayoutInflater.java:492)                                       
    at android.view.LayoutInflater.inflate(LayoutInflater.java:397)                                       
    at android.view.LayoutInflater.inflate(LayoutInflater.java:353)                                       
    at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:249)                                       
    at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:106)                                       
    at com.************.activity_fragment.Fragment_1_Main.onCreate(Fragment_1_Main.java:100)                                       
    at android.app.Activity.performCreate(Activity.java:5231)                                       
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)                                       
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159)                                      
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)                                        
    at android.app.ActivityThread.access$800(ActivityThread.java:135)                                        
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)                                        
    at android.os.Handler.dispatchMessage(Handler.java:102)                                       
    at android.os.Looper.loop(Looper.java:136)                                        
    at android.app.ActivityThread.main(ActivityThread.java:5017)                                        
    at java.lang.reflect.Method.invokeNative(Native Method)                                        
    at java.lang.reflect.Method.invoke(Method.java:515)                                        
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)                                        
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)                                        
    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:423)
    at android.view.LayoutInflater.createView(LayoutInflater.java:595)
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:697)                                                        
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:756) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:492) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:397) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:353) 
    at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:249) 
    at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:106) 
    at com.************.activity_fragment.Fragment_1_Main.onCreate(Fragment_1_Main.java:100) 
    at android.app.Activity.performCreate(Activity.java:5231) 
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087) 
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159) 
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245) 
    at android.app.ActivityThread.access$800(ActivityThread.java:135) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196) 
    at android.os.Handler.dispatchMessage(Handler.java:102)             
    at android.os.Looper.loop(Looper.java:136) 
    at android.app.ActivityThread.main(ActivityThread.java:5017) 
    at java.lang.reflect.Method.invokeNative(Native Method)                                                        
    at java.lang.reflect.Method.invoke(Method.java:515) 
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)       
    at dalvik.system.NativeStart.main(Native Method) 
    Caused by: android.content.res.Resources$NotFoundException: Resource is not a Drawable (color or path): TypedValue{t=0x1/d=0x7f020043 a=2 r=0x7f020043}
    at android.content.res.Resources.loadDrawable(Resources.java:2073)
    at android.content.res.Resources.getDrawable(Resources.java:700)
    at android.support.v4.content.ContextCompat.getDrawable(ContextCompat.java:353)
    at android.support.v7.internal.widget.TintManager.getDrawable(TintManager.java:145)
    at android.support.v7.internal.view.menu.MenuItemImpl.getIcon(MenuItemImpl.java:422)
    at android.support.design.internal.NavigationMenuPresenter$NavigationMenuAdapter.prepareMenuItems(NavigationMenuPresenter.java:383)
    at android.support.design.internal.NavigationMenuPresenter$NavigationMenuAdapter.<init>(NavigationMenuPresenter.java:255)
    at android.support.design.internal.NavigationMenuPresenter.getMenuView(NavigationMenuPresenter.java:97)
    at android.support.design.widget.NavigationView.<init>(NavigationView.java:149)
    at android.support.design.widget.NavigationView.<init>(NavigationView.java:88)
    at java.lang.reflect.Constructor.constructNative(Native Method) 
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423) 
    at android.view.LayoutInflater.createView(LayoutInflater.java:595) 
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:697) 
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:756)                                                  
    at android.view.LayoutInflater.inflate(LayoutInflater.java:492)                                            
    at android.view.LayoutInflater.inflate(LayoutInflater.java:397) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:353)                                                        
    at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:249)                 
    at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:106)                                                        
    at com.************.activity_fragment.Fragment_1_Main.onCreate(Fragment_1_Main.java:100)                                                        
    at android.app.Activity.performCreate(Activity.java:5231)                                                        
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)                                                        
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159) 
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245) 
    at android.app.ActivityThread.access$800(ActivityThread.java:135) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196) 
    at android.os.Handler.dispatchMessage(Handler.java:102) 
    at android.os.Looper.loop(Looper.java:136) 
    at android.app.ActivityThread.main(ActivityThread.java:5017) 
    at java.lang.reflect.Method.invokeNative(Native Method) 
    at java.lang.reflect.Method.invoke(Method.java:515) 
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595) 
    at dalvik.system.NativeStart.main(Native Method) 

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    tools:openDrawer="start">

    <include
        layout="@layout/app_bar_main"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>

    <android.support.design.widget.NavigationView
        android:id="@+id/nav_view"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:fitsSystemWindows="true"
        app:headerLayout="@layout/nav_header_main"
        app:menu="@menu/activity_main_drawer"/>
</android.support.v4.widget.DrawerLayout>

activity_main_drawer.xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:id="@+id/nav_home"
        android:icon="@drawable/ic_islas"
        android:title="@string/menu_item1_islas"/>
    <item
        android:id="@+id/nav_favorite_noticias"
        android:icon="@drawable/ic_noticias"
        android:title="@string/menu_item1_noticias"/>
    <item
        android:id="@+id/nav_favorite_radios"
        android:icon="@drawable/ic_radiosfavoritas"
        android:title="@string/menu_item1_radio"/>

    <group android:title="@string/menu_item2_titulo">
       <item
            android:id="@+id/nav_share"
            android:icon="@drawable/ic_menu_share"
            android:title="@string/menu_item2_compartir"/>
       <item
            android:id="@+id/nav_stars"
            android:icon="@drawable/ic_star_black_24dp"
            android:title="@string/menu_item2_valorarAPP"/>
       <item
            android:id="@+id/nav_send"
            android:icon="@drawable/ic_menu_send"
            android:title="@string/menu_item2_soporte"/>
       <item
            android:id="@+id/nav_supervisor"
            android:icon="@drawable/ic_supervisor_account_black_24dp"
            android:title="@string/menu_item2_acerca"/>
     </group>
 </menu>

nav_header_main.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="@dimen/nav_header_height"
    xmlns:tools="http://schemas.android.com/tools"
    android:background="@drawable/wallpapermenu1"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:theme="@style/ThemeOverlay.AppCompat.Dark"
    android:orientation="vertical"
    android:gravity="bottom">

<ImageView
        android:layout_width="60dp"
        android:layout_height="60dp"
        android:paddingTop="@dimen/nav_header_vertical_spacing"
        android:src="@drawable/canarypixel"
        tools:ignore="ContentDescription"
        android:id="@+id/imageView"
        android:layout_marginBottom="16dp"
        android:layout_above="@+id/textView" android:layout_alignParentEnd="true"/>

<TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingTop="@dimen/nav_header_vertical_spacing"
        android:text="@string/canarypixel"
        android:textAppearance="@style/TextAppearance.AppCompat.Body1" android:id="@+id/textView3"
        android:textSize="10sp"
        android:layout_above="@+id/textView" android:layout_alignParentStart="true"
        android:textAlignment="textEnd"/>
<TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/canarypixel_gmail_com"
        android:id="@+id/textView" android:textSize="10sp"
        android:layout_alignParentBottom="true" android:layout_alignParentStart="true"
        android:textAlignment="textEnd" android:layout_alignParentEnd="true"/>
</RelativeLayout>

build.gradle

apply plugin: 'com.android.application'

android {
compileSdkVersion 22
buildToolsVersion "25.0.0"
defaultConfig {
    applicationId "com.***********"
    minSdkVersion 17
    targetSdkVersion 22
    versionCode 6
    versionName "1.3"
    testInstrumentationRunner 
"android.support.test.runner.AndroidJUnitRunner"
    vectorDrawables.useSupportLibrary = true
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
sourceSets { main { assets.srcDirs = ['src/main/assets', 'src/main/assets/'] 
} }
}

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', 
{
    exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:22.2.1'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
compile 'com.google.android.gms:play-services-ads:12.0.1'
compile 'com.android.support:design:22.2.1'
compile 'com.android.support:support-v4:22.2.1'
testCompile 'junit:junit:4.12'
}

Upvotes: 1

Views: 597

Answers (1)

Sagar
Sagar

Reputation: 24917

The reason you are getting this error is: You are putting images in drawable-21 folder only, it will make it available only for API level 21 and not for API 19.

You need to ensure those images are available in drawable folder too, so that it works on API 19.

Upvotes: 1

Related Questions