Search code examples
androidandroid-layoutcardviewgradle-dependencies

Missing classes android.support.v7.widget.CardView


I have build Text Recognition App from this tutoriel but my layout giving me some issue

The following classes could not be found:

android.support.v7.widget.CardView

Expectation result

Reality current result

What Im I missing or doing wrong ?

build.gradle app :

implementation 'com.android.support:design:28.0.0'
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:cardview-v7:28.0.0'
implementation 'com.android.support:recyclerview-v7:28.0.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'

activity_main

<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<ScrollView
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">
        <android.support.v7.widget.CardView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            app:cardBackgroundColor="#fff"
            app:cardUseCompatPadding="true"
            app:cardCornerRadius="3dp"
            app:cardElevation="3dp">
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:padding="5dp">
                <TextView
                    android:text="Result"
                    android:textColor="@color/colorPrimary"
                    android:textSize="20sp"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content" />
                <EditText
                    android:id="@+id/resultET"
                    android:hint=""
                    android:autoLink="all"
                    android:padding="5dp"
                    android:background="@null"
                    android:textColor="#000"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:autofillHints=""/>
            </LinearLayout>
      </android.support.v7.widget.CardView>
   </LinearLayout>
 </ScrollView>
</RelativeLayout>

Solution

  • Beside replacing

    com.android.support:cardview-v7:28.0.0
    

    as

    androidx.cardview:cardview:1.0.0
    

    you still need to replace xml and import object from

    android.support.v7.widget.CardView
    

    to

    androidx.cardview.widget.CardView
    

    By the way, other components should be replaced too. for example:

    in gradle

    implementation 'androidx.recyclerview:recyclerview:1.0.0'
    

    in code and xml object will be

    androidx.recyclerview.widget.RecyclerView