Android Studio Gradle更新后RecViewFragment无法转Fragment报错如何解决
报错解决方法
根本原因
你用到了两种不同包下的Fragment类,类型不兼容:
- MainActivity中使用的
getSupportFragmentManager()属于AndroidX兼容包体系,要求传入的Fragment必须是androidx.fragment.app.Fragment的子类 - 你编写的
RecViewFragment继承的是Android原生旧版android.app.Fragment,和要求的类型不匹配所以报转换错误。你之前只在MainActivity中导入了AndroidX的Fragment,没有修改Fragment子类自身的继承来源,所以修改不生效。
具体解决步骤
- 第一步:修改RecViewFragment的导入语句
打开RecViewFragment.java文件,删除顶部的import android.app.Fragment;,替换为:import androidx.fragment.app.Fragment; - 第二步:统一所有自定义Fragment的包来源
检查项目中所有自定义Fragment类(包括MyProfileFragment、MapFragment、BusFragment、InfoFragment等),确保全部继承自androidx.fragment.app.Fragment,不要混用android.app.Fragment,避免后续出现同类报错。 - 第三步:清理重建项目
点击Android Studio顶部菜单栏的Build → Clean Project,待清理完成后再执行Build → Rebuild Project,清除旧的构建缓存即可解决报错。
内容的提问来源于stack exchange,提问作者Deepak Chauhan
相关产品推荐
相关产品推荐

