Android : android.app.FragmentManager 无法转换为 android.support.v4.app.FragmentManager

Android : android.app.FragmentManager cannot be converted to android.support.v4.app.FragmentManager

我正在尝试为我的片段创建一个适配器,但我得到了这个:

Error:(19, 72) 错误:类型不兼容:android.app.FragmentManager 无法转换为 android.support。v4.app.FragmentManager

这是我主要的一部分activity:

import android.app.Activity;
import android.support.v4.view.ViewPager;
import android.os.Bundle;

public class MainActivity extends Activity {

CustomPagerAdapter mCustomPagerAdapter;
ViewPager mViewPager;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    // == Setting up the ViewPager ==

    mCustomPagerAdapter = new CustomPagerAdapter(getFragmentManager(),this);    <--- Error is on this line

这是我的 customAdapter class 的一部分:

import android.content.Context;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;

public class CustomPagerAdapter extends FragmentPagerAdapter {

protected Context mContext;

public CustomPagerAdapter(FragmentManager fm, Context context) {
    super(fm);
    mContext = context;
}

感谢任何帮助!

您需要在代码中使用 getSupportFragmentManager(),而不是 getFragmentManager()。查看 here 为什么

您的 MainActivity 应该扩展 FragmentActivity and you should use getSupportFragmentManager() 方法而不是 getFragmentManager()

请使用getSupportFragmentManager();解决您的问题

您的 FragmentPagerAdapter 属于 android.support.v4.app.FragmentPagerAdapter 要么将其更改为 android.app.FragmentPageAdapter

或更改此

 mCustomPagerAdapter = new CustomPagerAdapter(getFragmentManager(),this);

mCustomPagerAdapter = new CustomPagerAdapter(getSupportFragmentManager(),this);

会解决你的问题干杯:)