我有一个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)时,它会再次创建。
我怎样才能解决这个问题?

最佳答案

我自己找到了解决办法:

mViewPager.setOffscreenPageLimit(nrOfPages);

关于android - Android- fragment 和viewpager,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16059301/

10-08 21:09