im Verwenden von 3 Fragmenten in einem Viewpager, das Problem, das Laden großer Daten in Asytask und Loader, in Geräten wie HTC eins funktioniert gut, aber in Low-End-Geräten nehmen eine Menge Zeit . Dies liegt daran, dass, wenn ich den PagerAdapter implementiere, ich die Fragmente in eine ArrayList stelle, so erzwingen die Fragmente die Instabilität, wenn die Hauptaktivität geladen wird. Was ich brauche ist einfach "Laden" das erste Fragment (Haupt) und wenn der Benutzer "swype" das andere Fragment laden. Ist es möglich, dies zu erreichen? das ist meine SeiteAdapterwie laden Fragment in ViewPager nur, wenn es
public class PagerAdapter extends FragmentPagerAdapter {
private final ArrayList<Fragment> mFragments = new ArrayList<Fragment>();
// private final ArrayList<String> titulos = new ArrayList<String>();
// private int NUM_PAGES =0;
public PagerAdapter(FragmentManager manager,int num_pages) {
super(manager);
// this.NUM_PAGES = num_pages;
}
public void addFragment(Fragment fragment,String title) {
mFragments.add(fragment);
notifyDataSetChanged();
}
@Override
public int getCount() {
//return NUM_PAGES;
return mFragments.size();
}
@Override
public Fragment getItem(int position) {
return mFragments.get(position);
}
}
Versuchen Sie pager.setOffscopePageLimit (1); Dies wird ein Fragment auf einmal beibehalten. –
Dies wird in "Speicher" beibehalten, aber es wird das Fragment jedes Mal, wenn die Verwendung Swype. – Javier
Yup .. es wird erfrischen .. –