无法解析方法 getParentFragmentManager

Cannot resolve method getParentFragmentManager

我正在清理一个小的 Android 项目,删除支持库的使用和 androidx 的使用似乎很有希望。尽管如此,我的 MainActivity.java:

遇到了一个奇怪的问题
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentPagerAdapter;

private void setupFragments(){
    //...
    ViewPager viewPager = findViewById(R.id.pager);
    ViewPagerAdapter adapter = new ViewPagerAdapter(getParentFragmentManager());
    viewPager.setAdapter(adapter);
    viewPager.setOffscreenPageLimit(2);
    tabLayout.setupWithViewPager(viewPager);
    //...

在旧版本中,使用getFragmentManager()代替。尽管如此,现在我收到 Cannot resolve method getParentFragmentManager 编译错误,并且 Android Studio 建议我创建自己的 getParentFragmentManager 函数。根据我的研究,如上所述,导入 androidx 库时应该可以访问此功能。

我在这里错过了什么?

编辑: 如果相关,我还会在 FragmentPagerAdapter 的定义中收到来自 androidx 的 FragmentManager 弃用警告:

public class ViewPagerAdapter 扩展了 FragmentPagerAdapter { ViewPagerAdapter(FragmentManager fm) { // <---- 已弃用 超级(调频); }

关于 androidx.fragment:fragment 的版本,我只是按照答案中的建议使用 implementation 'androidx.fragment:fragment-ktx:1.2.2'(之前什么都没有)。

导入 androidx.fragment.app.FragmentTransaction 没有任何变化。也显示为未使用。

使用 getSupportFragmentManager(); 而不是 getParentFramentManager(); 应该可以正常工作。

Fragment组件1.2.0版本新增功能

尝试更改您的 build.gradle 文件(当前稳定版本):
implementation 'androidx.fragment:fragment-ktx:1.2.2'

您应该尝试使用:activity.getSupportFragmentManager()