Android Studio出现Can’t import: android.support.v7.widget.CardView
-
如果是Android Studio 3.4以下版本,cardview导入依赖,同时对应模块的build.gradle文件中增加compile ‘com.android.support:cardview-v7:28+’
-
如果是Android Studio 3.4以上版本。
cardview导入依赖时,需
把原来support库的路径改为对应的AndroidX库的路径。
举个例子
原来导入appcompat-v7的写法是下面这样:
implementation 'com.android.support:appcompat-v7:28.0.0'
启用AndroidX之后,导入appcompat-v7的写法要改成下面这样:
implementation 'androidx.appcompat:appcompat:1.0.0'
详细的support依赖库的新旧对应关系见下表:
支持库的旧路径 | 支持库的新路径 |
---|---|
com.android.support.constraint:constraint-layout | androidx.constraintlayout:constraintlayout:1.1.2 |
com.android.support.test.espresso:espresso-core | androidx.test.espresso:espresso-core:3.1.0 |
com.android.support.test:runner | androidx.test: runner:1.1.0(多了个空格,需删除) |
com.android.support:appcompat-v7 | androidx.appcompat:appcompat:1.0.0 |
com.android.support:cardview-v7 | androidx.cardview:cardview:1.0.0 |
com.android.support:design | com.google.android.material:material:1.0.0-rc01 |
com.android.support:multidex | androidx.multidex:multidex:2.0.0 |
com.android.support:palette-v7 | androidx.palette:palette:1.0.0 |
com.android.support:recyclerview-v7 | androidx.recyclerview:recyclerview:1.0.0 |
com.android.support:support-v4 | androidx.legacy:legacy-support-v4:1.0.0 |
除了修改support库的路径,还要修改support控件的import导包代码,同时xml布局文件中也要同步,像AppCompatActivity原来的import语句是下面这样的:
import android.support.v7.app.AppCompatActivity;
启用AndroidX之后,导入AppCompatActivity的代码要改成下面这样:
import androidx.appcompat.app.AppCompatActivity;
详细的support控件的新旧对应关系见下表:
支持控件的旧包名 | 支持控件的旧包名 |
---|---|
android.support.v4.app.Fragment | androidx.fragment.app.Fragment |
android.support.v4.app.FragmentActivity | androidx.fragment.app.FragmentActivity |
android.support.v4.app.FragmentManager | androidx.fragment.app.FragmentManager |
android.support.v4.app.FragmentPagerAdapter | androidx.fragment.app.FragmentPagerAdapter |
android.support.v4.view.ViewPager | androidx.viewpager.widget.ViewPager |
android.support.v4.view.PagerAdapter | androidx.viewpager.widget.PagerAdapter |
android.support.v4.view.PagerTabStrip | androidx.viewpager.widget.PagerTabStrip |
android.support.v4.view.PagerTitleStrip | androidx.viewpager.widget.PagerTitleStrip |
android.support.v7.app.AppCompatActivity | androidx.appcompat.app.AppCompatActivity |
android.support.v7.widget.Toolbar | androidx.appcompat.widget.Toolbar |
android.support.v7.widget.RecyclerView | androidx.recyclerview.widget.RecyclerView |
android.support.v7.widget.GridLayoutManager | androidx.recyclerview.widget.GridLayoutManager |
android.support.v7.widget.LinearLayoutManager | androidx.recyclerview.widget.LinearLayoutManager |
android.support.v7.widget.StaggeredGridLayoutManager | androidx.recyclerview.widget.StaggeredGridLayoutManager |
android.support.v7.widget.CardView | androidx.cardview.widget.CardView |
android.support.v7.graphics.Palette | androidx.palette.graphics.Palette |
参考文章:
https://cloud.tencent.com/developer/article/1459306
https://developer.android.google.cn/jetpack/androidx/releases/cardview?hl=zh-cn