我正在尝试将CardView添加到我的活动中作为官方样本。但它不起作用。
如果我直接运行我的项目,则会导致java.lang.ClassNotFoundException:android.support.v7.widget.CardView。
答案 0 :(得分:92)
您应该将其添加到build.gradle
:
dependencies {
...
implementation 'com.android.support:cardview-v7:21.+'
implementation 'com.android.support:recyclerview-v7:21.+'
...
}
答案 1 :(得分:6)
写下我的答案提供:
1)
compileSdkVersion 27
的更新版本。2)使用
implementation
代替compile
- What's the difference between implementation and compile in Gradle?。3)完整版本号,注意Android Studio显示的
Avoid using + in version numbers; can lead to unpredictable and unrepeatable builds..,
警告。4)
build.gradle (Module:app)
的位置视觉。5)因为我无法在@ Eun的答案下面写评论。
您需要在{strong> build.gradle [Module:app]中粘贴implementation 'com.android.support:cardview-v7:27.1.1'
,例如:MyFirstApplication ->
app ->
build.gradle < / p>
粘贴以下依赖项子句:
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
...
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support:cardview-v7:27.1.1'
...
}
要从Android工作室本身打开:(从左侧) 1:项目 ->
选择 Android 查看->
Gradle脚本 ->
build.gradle (模块:应用)
那是:
(如果未显示以下图像您可以找到图像here.
使用Android Studio 3.1.4
修改:更新了版本号。
答案 2 :(得分:2)
dependencies {
...
compile 'com.android.support:cardview-v7:26.+'
compile 'com.android.support:recyclerview-v7:26.+'
...
}
答案 3 :(得分:2)
随着Android 9.0(API级别28)的发布,支持库的新版本名为AndroidX
并且支持库将终止...
将以下内容添加到buld.gradle:app
dependencies {
...
implementation 'androidx.recyclerview:recyclerview:1.0.0'
implementation 'androidx.cardview:cardview:1.0.0'
...
}
答案 4 :(得分:2)
这都是因为依赖和android版本问题。
解决方案:
对于 RecyclerView:
<androidx.recyclerview.widget.RecyclerView/>
代替: 对于 CardView: 代替: **或者只需从调色板面板中搜索和拖放CardView,RecyclerView ..etc。 对于支持AndroidX的依赖项: 转到本文以获取完整说明:
https://medium.com/@daryllwong/recyclerview-cardview-is-not-working-properly-dependency-problems-in-2019-e813ab48b3d4 <androidx.cardview.widget.CardView/>
implementation 'androidx.recyclerview:recyclerview:1.1.0'
implementation 'androidx.cardview:cardview:1.0.0'
答案 5 :(得分:0)
由于高速缓存的cardview aar损坏,我正面临这个问题。
Gradle正在选择cardview的本地缓存版本。也可以通过更改库版本来工作,但要确保您没有覆盖configurations.all
解决方案:
关闭Android Studio,
在Windows中转到C:\Users\Qamar\.gradle\caches
并搜索cardview
,删除您的版本文件夹,清理并重建。
使用:Android Studio 3.3和gradle:3.2.1
答案 6 :(得分:0)
在您的xml文件中进行更改 android.support.v7.widget.CardView 至 androidx.cardview.widget.CardView
答案 7 :(得分:0)
只需点击右上角的同步
答案 8 :(得分:0)
为了避免在添加 CardView 时出错,您可以使用 Android Studio 工具。在主菜单中打开“项目结构...”,然后打开“依赖项”、“+”和“cardview” strong>" 在搜索行中。
目前 Android Studio 将 'androidx.cardview:cardview:1.0.0' 行添加到您的 build.gradle 文件中。然后你可以在你的布局中使用“<androidx.cardview.widget.CardView>”。
也许一两年后版本或包名称会发生变化。