关于Android中调用getSupportFragmentManager()方法错误问题

最近在做Android开发的课后作业,这周的是:设计实现一个利用Fragment实现屏幕部分界面切换的项目,在借鉴网上的资料的时候发现了如下报错,并且一时无法解决,错误提示:
Incompatible types.
Required: android.fragment.app.FragmentManager
Found: android.app.FragmentManager
在这里插入图片描述把getFragmentManager()改成getSupportFragmentManager(),还是无法解决这个问题
在这里插入图片描述重新检查了一下我导入的包,发现并没有少导入包。
(当你发现或者系统提示少导入包时,可以使用快捷键(Alt + Enter)可以解决绝大部分问题)
于是我查看了大量资料后看到一篇博客,顺利地解决了我的问题

解决方法如下:
如果需要调用getSupportFragmentManager()方法,则需要将该活动继承AppCompatActivity,而不是继承Activity,把继承对应位置修改即可解决该问题。

参考:https://blog.csdn.net/fu_jian_ping/article/details/85036672

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Android 开发,如果你使用的是 Support 包(如 androidx),你可以通过调用 `getSupportFragmentManager()` 方法来获取 Fragment 的管理器。 以下是一个使用 `getSupportFragmentManager()` 方法的示例代码: ```java // 导入需要的包 import androidx.appcompat.app.AppCompatActivity; import androidx.fragment.app.FragmentManager; import androidx.fragment.app.FragmentTransaction; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 获取 FragmentManager FragmentManager fragmentManager = getSupportFragmentManager(); // 开始 FragmentTransaction FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); // 添加或替换 Fragment MyFragment myFragment = new MyFragment(); fragmentTransaction.add(R.id.fragment_container, myFragment); // 将 Fragment 添加到容器 // 或者使用 replace 方法替换一个已存在的 Fragment // fragmentTransaction.replace(R.id.fragment_container, myFragment); // 提交事务 fragmentTransaction.commit(); } } ``` 在上面的代码,我们首先通过 `getSupportFragmentManager()` 方法获取 FragmentManager 的实例。然后,我们创建一个 FragmentTransaction 对象来开始执行 Fragment 操作,例如添加或替换 Fragment。最后,我们通过调用 `commit()` 方法提交事务。 请注意,`R.id.fragment_container` 是一个容器的 ID,它指定了在布局文件放置 Fragment 的位置。你可以根据实际情况修改它。 希望以上信息能对你有所帮助!如果还有其他问题,请随时提问。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值