Android Fragment:方法 FragmentTransaction.add(Fragment,String)不适用 (参数不匹配; int无法转换为Fragment)

1. 报错

错误: 对于add(int,MyFragment), 找不到合适的方法
方法 FragmentTransaction.add(Fragment,String)不适用
(参数不匹配; int无法转换为Fragment)
在这里插入图片描述

2. 原因

这时候来看看自己所导的包如下:
在这里插入图片描述
在这里插入图片描述
自定义的MyFragment类中import的包与Activity中import不一致.导包不一致导致,导致有些方法不适用

3. 解决

把相应的包导一致,并且更改对应的方法,这里我是选择导入为androidx的包
在这里插入图片描述

把下面的包:

import android.app.FragmentManager;
import android.app.FragmentTransaction;

更改为如下:

import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentTransaction;

MainActivity中的方法:

 fgManager = getFragmentManager();

更改为:

fgManager = getSupportFragmentManager();

每个人使用的版本包不一定相同,总之,把包导入一致,方法更改相应的方法问题就解决了~

猜你喜欢

转载自blog.csdn.net/weixin_43853746/article/details/111026662