android - 错误膨胀类 android.support.v7.widget.CardView ClassNotFoundException
问题描述
我正在尝试扩充包含 CardView 的布局,但我正在处理一些问题。
贝娄是错误状态,
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.hearthstonecards, PID: 14895
android.view.InflateException: Binary XML file line #8: Binary XML file line #8: Error inflating class android.support.v7.widget.CardView
Caused by: android.view.InflateException: Binary XML file line #8: Error inflating class android.support.v7.widget.CardView
Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.v7.widget.CardView" on path: DexPathList[[zip file "/data/app/com.example.hearthstonecards-Kl_z5hCNi7YCycFhods3Tg==/base.apk", zip file "/data/app/com.example.hearthstonecards-Kl_z5hCNi7YCycFhods3Tg==/split_lib_dependencies_apk.apk", zip file "/data/app/com.example.hearthstonecards-Kl_z5hCNi7YCycFhods3Tg==/split_lib_resources_apk.apk", zip file "/data/app/com.example.hearthstonecards-Kl_z5hCNi7YCycFhods3Tg==/split_lib_slice_0_apk.apk", zip file "/data/app/com.example.hearthstonecards-Kl_z5hCNi7YCycFhods3Tg==/split_lib_slice_1_apk.apk", zip file "/data/app/com.example.hearthstonecards-Kl_z5hCNi7YCycFhods3Tg==/split_lib_slice_2_apk.apk", zip file "/data/app/com.example.hearthstonecards-Kl_z5hCNi7YCycFhods3Tg==/split_lib_slice_3_apk.apk", zip file "/data/app/com.example.hearthstonecards-Kl_z5hCNi7YCycFhods3Tg==/split_lib_slice_4_apk.apk", zip file "/data/app/com.example.hearthstonecards-Kl_z5hCNi7YCycFhods3Tg==/split_lib_slice_5_apk.apk", zip file "/data/app/com.example.hearthstonecards-Kl_z5hCNi7YCycFhods3Tg==/split_lib_slice_6_apk.apk", zip file "/data/app/com.example.hearthstonecards-Kl_z5hCNi7YCycFhods3Tg==/split_lib_slice_7_apk.apk", zip file "/data/app/com.example.hearthstonecards-Kl_z5hCNi7YCycFhods3Tg==/split_lib_slice_8_apk.apk", zip file "/data/app/com.example.hearthstonecards-Kl_z5hCNi7YCycFhods3Tg==/split_lib_slice_9_apk.apk"],nativeLibraryDirectories=[/data/app/com.example.hearthstonecards-Kl_z5hCNi7YCycFhods3Tg==/lib/arm64, /system/lib64]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
at android.view.LayoutInflater.createView(LayoutInflater.java:606)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:790)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:730)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:863)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824)
at android.view.LayoutInflater.inflate(LayoutInflater.java:515)
at android.view.LayoutInflater.inflate(LayoutInflater.java:423)
at com.example.hearthstonecards.adapter.RecyclerViewAdapter.onCreateViewHolder(RecyclerViewAdapter.kt:34)
at com.example.hearthstonecards.adapter.RecyclerViewAdapter.onCreateViewHolder(RecyclerViewAdapter.kt:15)
at androidx.recyclerview.widget.RecyclerView$Adapter.createViewHolder(RecyclerView.java:6942)
at androidx.recyclerview.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:6114)
at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5997)
at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5993)
at androidx.recyclerview.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2227)
at androidx.recyclerview.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1558)
at androidx.recyclerview.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1518)
at androidx.recyclerview.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:613)
at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:4029)
at androidx.recyclerview.widget.RecyclerView.dispatchLayout(RecyclerView.java:3746)
at androidx.recyclerview.widget.RecyclerView.onLayout(RecyclerView.java:4299)
at android.view.View.layout(View.java:20672)
at android.view.ViewGroup.layout(ViewGroup.java:6194)
RecyclerViewAdapter 中的 Kotlin 代码,
class RecyclerViewAdapter(private val recyclerViewItems: ArrayList<HearthstoneCardItemData>, context: Context) :
RecyclerView.Adapter<RecyclerViewHolder>() {
private val inflater = LayoutInflater.from(context)
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerViewHolder {
val view = inflater.inflate(R.layout.recycler_view_card_item, parent, false)
return RecyclerViewHolder(view)
}
}
下面是xml布局。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<android.support.v7.widget.CardView
android:id="@+id/cardView"
android:layout_width="match_parent"
android:layout_height="150dp"
card_view:cardCornerRadius="0dp"
card_view:cardElevation="@dimen/margin10"
card_view:cardMaxElevation="@dimen/margin10"
card_view:contentPadding="@dimen/margin10">
<RelativeLayout
android:id="@+id/relativeLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:layout_gravity="center">
<ImageView
android:id="@+id/iv_card_item"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:tint="@android:color/white"
android:padding="5dp"/>
</RelativeLayout>
</android.support.v7.widget.CardView>
</LinearLayout>
我还在 gradle 文件中添加了正确的依赖项(我认为)
implementation 'androidx.appcompat:appcompat:1.1.0-alpha02'
implementation 'androidx.recyclerview:recyclerview:1.1.0-alpha02'
implementation 'androidx.cardview:cardview:1.0.0'
我也清理了重建,仍然没有改变任何建议将不胜感激!
解决方案
你androidx.cardview.widget.CardView
不需要android.support.v7.widget.CardView
。
推荐阅读
- python - DialogFlow Python3 Webhook - 增加超时?
- c++ - 将 int 与 double 进行比较的预处理器“无效的整数常量表达式”
- scala - scala 无法长时间添加
- python - 为什么我的按钮没有打印设计的功能?
- maven - 部署到 Artifactory 时设置 Debian 控制文件属性
- java - 将多个地图聚合到一个地图的优雅而高效的方式
- keras - 当我使用 load_model 加载 .h5 文件时,无法打开对象(错误的对象标头版本号)
- objective-c - 将 UIScrollView 中的未缩放视图缩放到边界
- google-apps-script - Google 表格:将文件夹范围导入主表格
- cloud-foundry - 在 cloudfoundry cli 中安装 stack-auditor 插件