Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Error inflating class android.support.v7.widget.RecyclerView

I'm trying to use RecyclerView in my existing project, builds without errors but getting no class found error for the RecyclerView while inflating. Cannot see what I'm doing wrong. Thanks for helping!

//activity_main.xml

<LinearLayout     xmlns:android="http://schemas.android.com/apk/res/android"     android:layout_height="match_parent"     android:layout_width="match_parent"     android:orientation="vertical">      <android.support.v7.widget.RecyclerView         android:id="@+id/recyclerView"         android:layout_width="match_parent"         android:layout_height="wrap_content"/> </LinearLayout>  //MainActivity.onCreate     @Override     protected void onCreate(Bundle savedInstanceState) {         super.onCreate(savedInstanceState);         setContentView(R.layout.activity_main);         recyclerView = (RecyclerView) findViewById(R.id.recyclerView);         ItemData itemsData[] = { new ItemData("Help",R.drawable.visa),                 new ItemData("Delete",R.drawable.sample),                 new ItemData("Cloud",R.drawable.sample),                 new ItemData("Favorite",R.drawable.sample),                 new ItemData("Like",R.drawable.sample),                 new ItemData("Rating",R.drawable.sample)};          // 2. set layoutManger         recyclerView.setLayoutManager(new LinearLayoutManager(this));         // 3. create an adapter         MyAdapter mAdapter = new MyAdapter(itemsData);         // 4. set adapter         recyclerView.setAdapter(mAdapter);         // 5. set item animator to DefaultAnimator         //recyclerView.setItemAnimator(new DefaultItemAnimator());         recyclerView.setHasFixedSize(true);     } 

//build.gradle

apply plugin: 'com.android.application'  android {     compileSdkVersion 20     buildToolsVersion '19.1.0'      defaultConfig {         applicationId "com.domain.project"         minSdkVersion 19         targetSdkVersion 20         versionCode 1         versionName "1.0"     }      buildTypes {         release {             runProguard false             proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'         }     } }  dependencies {     compile fileTree(include: ['*.jar'], dir: 'libs')     compile 'com.android.support:support-v4:+'     compile 'com.android.support:support-v13:+'     compile project(':facebook-3.15')     compile project(':parse-1.5.1')     compile project(':viewpagerindicator-2.4.1')     compile 'com.github.manuelpeinado.fadingactionbar:fadingactionbar:3.1.2'     compile 'com.android.support:cardview-v7:+'     compile 'com.android.support:recyclerview-v7:+'     compile 'com.google.android.gms:play-services:+' }  configurations {     // to avoid double inclusion of support libraries     all*.exclude group: 'com.android.support', module: 'support-v4' } 

//LOGCAT

08-24 17:49:27.626  27544-27544/com.domain.project E/AndroidRuntime﹕ FATAL EXCEPTION: main     Process: com.domain.project, PID: 27544     java.lang.RuntimeException: Unable to start activity ComponentInfo{com.domain.project/com.domain.project.MainActivity}: android.view.InflateException: Binary XML file line #7: Error inflating class android.support.v7.widget.RecyclerView             at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2215)             at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2264)             at android.app.ActivityThread.access$800(ActivityThread.java:144)             at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1205)             at android.os.Handler.dispatchMessage(Handler.java:102)             at android.os.Looper.loop(Looper.java:136)             at android.app.ActivityThread.main(ActivityThread.java:5139)             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:796)             at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:612)             at dalvik.system.NativeStart.main(Native Method)      Caused by: android.view.InflateException: Binary XML file line #7: Error inflating class android.support.v7.widget.RecyclerView             at android.view.LayoutInflater.createView(LayoutInflater.java:620)             at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:696)             at android.view.LayoutInflater.rInflate(LayoutInflater.java:755)             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 com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:343)             at android.app.Activity.setContentView(Activity.java:1929)             at com.domain.project.MainActivity.onCreate(MainActivity.java:35)             at android.app.Activity.performCreate(Activity.java:5231)             at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)             at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2169)             at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2264)             at android.app.ActivityThread.access$800(ActivityThread.java:144)             at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1205)             at android.os.Handler.dispatchMessage(Handler.java:102)             at android.os.Looper.loop(Looper.java:136)             at android.app.ActivityThread.main(ActivityThread.java:5139)             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:796)             at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:612)             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:594)             at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:696)             at android.view.LayoutInflater.rInflate(LayoutInflater.java:755)             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 com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:343)             at android.app.Activity.setContentView(Activity.java:1929)             at com.domain.project.MainActivity.onCreate(MainActivity.java:35)             at android.app.Activity.performCreate(Activity.java:5231)             at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)             at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2169)             at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2264)             at android.app.ActivityThread.access$800(ActivityThread.java:144)             at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1205)             at android.os.Handler.dispatchMessage(Handler.java:102)             at android.os.Looper.loop(Looper.java:136)             at android.app.ActivityThread.main(ActivityThread.java:5139)             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:796)             at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:612)             at dalvik.system.NativeStart.main(Native Method)      Caused by: java.lang.NoClassDefFoundError: android.support.v4.util.Pools$SimplePool             at android.support.v7.widget.RecyclerView.<init>(RecyclerView.java:121)             at android.support.v7.widget.RecyclerView.<init>(RecyclerView.java:213)             at java.lang.reflect.Constructor.constructNative(Native Method)             at java.lang.reflect.Constructor.newInstance(Constructor.java:423)             at android.view.LayoutInflater.createView(LayoutInflater.java:594)             at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:696)             at android.view.LayoutInflater.rInflate(LayoutInflater.java:755)             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 com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:343)             at android.app.Activity.setContentView(Activity.java:1929)             at com.domain.project.MainActivity.onCreate(MainActivity.java:35)             at android.app.Activity.performCreate(Activity.java:5231)             at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)             at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2169)             at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2264)             at android.app.ActivityThread.access$800(ActivityThread.java:144)             at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1205)             at android.os.Handler.dispatchMessage(Handler.java:102)             at android.os.Looper.loop(Looper.java:136)             at android.app.ActivityThread.main(ActivityThread.java:5139)             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:796)             at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:612)             at dalvik.system.NativeStart.main(Native Method) 
like image 789
nomongo Avatar asked Aug 25 '14 01:08

nomongo


2 Answers

Or... in my case, I was including the androidx version of RecyclerView in my dependencies (build.gradle) but using the other in my XML... Doh.

Replaced

android.support.v7.widget.RecyclerView 

with

androidx.recyclerview.widget.RecyclerView 

and it worked! :)

like image 94
codingjeremy Avatar answered Sep 23 '22 18:09

codingjeremy


In the xml declaration of the RecyclerView: Replace

<android.support.v7.widget.RecyclerView 

with

<androidx.recyclerview.widget.RecyclerView 

Hope this works ^_^

like image 42
Eman Sallam Avatar answered Sep 23 '22 18:09

Eman Sallam