方法getChildFragmentManager()未定义

时间:2013-06-05 17:08:56

标签: android android-viewpager actionbarsherlock android-support-library

我有一个SherlockFragmentActivity,这个Activity有一个SectionsPagerAdapter和一个ViewPager。当我使用getChildFragmentManager()方法调用SectionsPagerAdapter的构造函数时,它会显示以下错误消息:

  

方法getChildFragmentManager()未定义类型ViewPagerActivity

这是我的代码:

public class ViewPagerActivity extends SherlockFragmentActivity implements OnPageChangeListener, OnQueryTextListener{

private SectionsPagerAdapter sectionsPagerAdapter;
private ViewPager viewPager;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.layout_view_pager);

    sectionsPagerAdapter = new SectionsPagerAdapter(getChildFragmentManager(), this);

    viewPager = (ViewPager) findViewById(R.id.pager);
    viewPager.setAdapter(sectionsPagerAdapter);
    viewPager.setOnPageChangeListener(this);

    this.getMovements();

    this.getPrizes();

    this.getVouchers();

    this.createDropdownlist(); 
}

我正在使用ActionBarSherlock,我在我的项目中使用“Android工具 - 添加支持库”更新了android-support-v4.jar,也在ActionBarSherlock项目中。

我这样做是因为我需要在Fragment中使用ListFragment,就像我在ViewPager上的页面一样。

1 个答案:

答案 0 :(得分:23)

getChildFragmentManager()Fragment上的方法,而不是FragmentActivity上的方法。在getSupportFragmentManager()上使用FragmentActivity