android viewpager changer adaptateur
Je suis le développement d'une application avec un ViewPager latéral de défilement tables, parfois j'ai besoin de changer l'adaptateur pour charger une autre série de tableaux.
J'ai essayé de faire ce qui suit:
mViewPager.setAdapter(new pagerAdapterPushed(getSupportFragmentManager()));
mViewPager.getAdapter().notifyDataSetChanged();
indicator.setViewPager(mViewPager);
indicator.invalidate();
mViewPager.invalidate();
mais il y a toujours recharger les données précédentes. N'est-il pas possible de modifier la carte d'un ViewPager?
source d'informationauteur Ste
Vous devez vous connecter pour publier un commentaire.
Exactement comme mon APPLI fait...
Pour le changement ViewPagerAdapter, ce que j'ai fait est :
Attribuer de nouvelles de l'adaptateur pour ViewPager
Espère que cela aide~
Vous avez besoin de remplacer
public int getItemPosition (Object object)
dans le pager de l'adaptateur. Pour chaque élément dans le viewpager, vous avez besoin de retournerPOSITION_UNCHANGED
(si il est encore dans le pager) ouPOSITION_NONE
(si elle a été retirée). Sinon, la vue pager ne pas savoir quelque chose a changé. Je ne recommanderais pas de définition d'une nouvelle carte, juste à l'effacement des données dans l'ancien.Je vois que @RRTW manière travaillé pour certaines personnes, mais il n'a pas à faire le truc pour moi (bien qu'il était proche). Sans commitNow()' au lieu d'un 'commit()' il ne serait pas fonctionner correctement. J'ai fait quelque chose comme ça:
J'ai trouvé une option très simple, je ne sais pas si c'est bon ou mauvais, mais vous pouvez tout simplement ré-adaptateur
C'est l'exemple de google exemple de projet Onglets Activité pour le bouton de FloatingActionButton
Ajouter à vue pager pour recharger pour le fragment suivant: