7

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

对于 ViewPagerActivity 类型,方法 getChildFragmentManager() 未定义

这是我的代码:

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 上的页面一样使用它。

4

1 回答 1

23

getChildFragmentManager()是一种方法 on Fragment,而不是 on FragmentActivity。使用getSupportFragmentManager()FragmentActivity.

于 2013-06-05T17:11:15.087 回答