Android-View Pager-Adapter zeigt leeren Bildschirm
Ich die Umsetzung Pager-Adapter in einem Fragment
. Wenn ich es lade der Bildschirm Erste mal, es funktioniert gut. Wenn ich Wechsel zu einem anderen fragment, und geht zur vorherigen fragment wieder das es zeigt leeren Bildschirm an. Wenn ich swipe zwischen verschiedenen Tippen Sie auf und bewegen Sie zunächst die tab-Taste, dann zeigt er die Daten.
Denke ich an Sie zurück die Registerkarten, die sichtbar sind, nicht, Daten zu laden, aber sobald Sie aus der Ansicht während swipe-navigation laden von Daten.
Hier ist mein Pager-Adapter:
public class MyPagerAdapter extends FragmentPagerAdapter {
public MyPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int index) {
switch (index) {
case 0:
return new Fragment1();
case 1:
return new Fragment2();
case 2:
return new Fragment3();
case 3:
return new Fragment4();
case 4:
return new Fragment5();
case 5:
return new Fragment6();
}
return null;
}
@Override
public int getCount() {
return 6;
}
}
Ich bin Einstellung meine adapter wie folgt:
viewPager = (ViewPager) rootView.findViewById(R.id.my_pager);
mAdapter = new MyPagerAdapter(getActivity().getSupportFragmentManager());
viewPager.setAdapter(mAdapter);
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
- Möglich, Duplikat der Fragment in ViewPager mit FragmentPagerAdapter ist leer, das zweite mal angesehen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden Sie diese,
Nur Überprüfen, ob Sie mit
getFragmentManager()
zum initialisieren der adapter , Versuchen Sie es mitgetChildFragmentManager()
wie diese :Weil Sie nicht haben darf, verschachtelten Fragmenten.
Fragmente in Fragmenten
Ändern Sie die Klasse erweitert
FragmentActivity
und es sollte funktionierenMein ViewPager ist in einem Fragment.
Ich dieses problem beheben, indem Ändern FragmentPagerAdapter zu FragmentStatePagerAdapter,und auch getFragmentManager().
es funktioniert gut;
verwenden
FragmentStatePagerAdapter
stattFragmentPagerAdapter
und fügen Sie diese Zeile, nachdem Sie den adapter
Diese werden sich daran erinnern-Fragmente im Gedächtnis und es wird nie zeigen, leeren Bildschirm. Bedenken Sie aber bitte, dass dies wird immer jede Seite die Daten im Speicher so verwenden Sie es entsprechend.