我有一个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上的页面一样。
答案 0 :(得分:23)
getChildFragmentManager()
是Fragment
上的方法,而不是FragmentActivity
上的方法。在getSupportFragmentManager()
上使用FragmentActivity
。