J'ai un ViewPager connecté à un FragmentPagerAdapter qui affiche trois fragments. Le ViewPager semble détruire la vue d'un fragment hébergé lorsqu'il est à plus d'un balayage de la position actuelle.
Ces vues sont toutes des listes simples et cette optimisation est complètement inutile, je voudrais donc la désactiver. Cela pose des problèmes visuels car les listes ont des animations de mise en page qui leur sont appliquées et ces animations sont rejouées après avoir été détruites et recréées. Il montre également l'animation d'introduction de la barre de défilement à chaque fois (où la barre de défilement est brièvement visible pour indiquer que le défilement est possible), ce qui peut être gênant, et la position de défilement actuelle de l'utilisateur est perdue dans le processus.
Il ne charge pas non plus le troisième fragment avant le premier balayage, ce qui est problématique car chaque fragment gère ses propres appels de service et je préférerais que les trois se déclenchent en même temps lorsque l'activité se charge. Avoir le troisième appel de service retardé est loin d'être idéal.
Existe-t-il un moyen de convaincre ViewPager d'arrêter ce comportement et de simplement garder tous mes fragments en mémoire?