我正在做一個3片段可滾動的應用程序,左邊的片段是片段1,片段2是在中心,而片段3是在右邊。我想Fragment2(中心)是第一個加載,我用mViewPager.setCurrentItem(1); 但是,當我啓動的應用程序,我在日誌中得到這個。Android片段奇怪的加載
onStart Fragment1
onResume Fragment1
onStart Fragment3
它的onPause當我去Fragment3(右)。當我去Fragment2(中心)時,我想暫停,因爲我在Fragment3上得到了主要的可執行錯誤。
這是一個MainActivity類別
public class MainActivity extends FragmentActivity {
SectionsPagerAdapter mSectionsPagerAdapter;
ViewPager mViewPager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager());
mViewPager = (ViewPager) findViewById(R.id.pager);
mViewPager.setAdapter(mSectionsPagerAdapter);
mViewPager.setCurrentItem(1);
}
public class SectionsPagerAdapter extends FragmentPagerAdapter {
public SectionsPagerAdapter(android.support.v4.app.FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
Fragment fragment = new Fragment();
switch (position) {
case 0:
return fragment = new Fragment1();
case 1:
return fragment = new Fragment2();
case 2:
return fragment = new Fragment3();
default:
break;
}
return fragment;
}
@Override
public int getCount() {
return 3;
}
@Override
public CharSequence getPageTitle(int position) {
Locale l = Locale.getDefault();
switch (position) {
case 0:
return getString(R.string.one).toUpperCase(l);
case 1:
return getString(R.string.two).toUpperCase(l);
case 2:
return getString(R.string.third).toUpperCase(l);
}
return null;
}
}
}
我是新來的Android,我不知道如何解決這個問題,任何回答將幫助。謝謝
我做了mViewPager.setOffscreenPageLimit(0)和1,但沒有幫助我,和以前一樣,你有什麼建議嗎?因爲fragment1和fragment3是json http對象,並且在刷應用程序崩潰時。 –