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);
会解决你的问题干杯:)
我正在尝试为我的片段创建一个适配器,但我得到了这个:
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);
会解决你的问题干杯:)