android - 系统应用程序中的 ClassCastException ContentFrameLayout androidx 与 support.v7
问题描述
奇怪的异常当我FrameLayout
在我的SampleActivity
.
Caused by: java.lang.ClassCastException: androidx.appcompat.widget.ContentFrameLayout cannot be cast to android.support.v7.widget.ContentFrameLayout
05-22 08:41:05.357 10520 10520 E AndroidRuntime: at android.support.v7.app.AppCompatDelegateImpl.createSubDecor(AppCompatDelegateImpl.java:685)
05-22 08:41:05.357 10520 10520 E AndroidRuntime: at android.support.v7.app.AppCompatDelegateImpl.ensureSubDecor(AppCompatDelegateImpl.java:516)
05-22 08:41:05.357 10520 10520 E AndroidRuntime: at android.support.v7.app.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:464)
05-22 08:41:05.357 10520 10520 E AndroidRuntime: at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
05-22 08:41:05.357 10520 10520 E AndroidRuntime: at com.sample.SampleActivity.onCreate(SampleActivity.java:98)
所以我在AppCompatDelegateImpl
这里查看了现在的源代码:AppCompatDelegateImpl
进口SampleActivity.java
:
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v7.app.ActionBar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
虽然这个类是 android 的一部分,appcompat.v7
但在内部它正在导入androidx.appcompat.widget.ContentFrameLayout
它是否暗示 appcompat.v7 在内部使用 androidx 依赖项?如果是,那么为什么我会收到此异常?
注意:请避免提供基于 gradle 的解决方案,因为它是一个系统应用程序。
解决方案
修复是在Android.mk
文件中包含 androidx 依赖项。
还必须按照 Android 开发人员网站中的建议将所有支持库类的导入更改为 androidx:https ://developer.android.com/jetpack/androidx/migrate
推荐阅读
- python - 如何计算熊猫中每个 p1 id 下的所有孩子的数量?id 和 parent id 已给出
- python - python - 从 python 脚本启动的跟踪进程
- android - Android Paint.setStrokeCap(Paint.Cap.ROUND) 性能问题
- macos - 禁用 Jupyter Notebook 单元格搜索
- android - 如何将套接字移动扫描仪与 android 应用程序集成并检索结果
- bash - 从环境变量展开变量集
- arrays - 这个使用范围的简单 For 循环如何以及为什么在 Go 中打印一个简单的 3D 数组?
- json - Applescript JSON 提取
- regex - Selenium IDE - 如何将正则表达式与命令“断言文本”一起使用?
- c++ - Change in number of button cause alignment issue in WxWidgets for Windows