我有一个FragmentActivity,里面包含一个ViewPager并且处理2个Fragments。
public class MyFragmentActivity extends FragmentActivity{
private Fragment f1; private Fragment f2; private ViewPager myPager; private MyFragmentAdapter mFragmentsAdapter; private static ArrayAdapter<Fragment> mFragmentArray; public void onCreate(Bundle icicle) { super.onCreate(icicle); setContentView(R.layout.my_layout); myViewPager = (ViewPager) findViewById(R.id.pager_acciones);
mFragmentArray = new ArrayAdapter<Fragment>(getApplicationContext(),android.R.layout.simple_list_item_1); f1 = new Fragment(); f1 = new Fragment();
mFragmentArray.add(f1); mFragmentArray.add(f2);
mFragmentsAdapter = new MyFragmentAdapter(getSupportFragmentManager()); myPager.setAdapter(mFragmentsAdapter); myPartidoPager.setCurrentItem(0);
}
public static class MyFragmentAdapter extends FragmentPagerAdapter { public AccionesFragmentAdapter(FragmentManager fm) { super(fm); }
@Override public int getCount() {
return mFragmentArray.getCount(); }
@Override public Fragment getItem(int position) {
return mFragmentArray.getItem(position); }
}
我的问题是:每次屏幕方向改变时,都会创建一个新的Activity以及两个新的Fragments。我不介意重新创建Activity,但不想让Fragments重新创建。