2

我有一个FragmentActivity包含ViewPager

mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager());
mViewPager = (ViewPager) findViewById(R.id.pager);
mViewPager.setAdapter(mSectionsPagerAdapter);

然后在我的SectionsPagerAdapter我有以下方法显示不同位置的布局:

@Override
public Fragment getItem(int position) {
    if(position == 0){
        return Fragment.instantiate(context, FragmentA.class.getName());
    }
    else if(position == 1){
        return Fragment.instantiate(context, FragmentB.class.getName());
    }
    else if(position == 2){
        return Fragment.instantiate(context, FragmentC.class.getName());
    }
    return null;
}

问题是多次FragmentC调用,这将重新创建视图,我不希望这样。onCreateView我希望它被创建一次,并保持不变。FragmentC在位置 2,然后我滑动到位置 1,就可以了。但是当我滑动到位置 0 并回到位置 2 时(FragmentC)它会再次创建。

我该如何解决这个问题?

4

1 回答 1

3

我自己找到了解决方案:

mViewPager.setOffscreenPageLimit(nrOfPages);
于 2013-04-17T12:19:33.380 回答