Bonjour à tous,
J'ai un ViewPager dans lequel j'accède à deux Fragments de même type. Je souhaiterai garder les références des fragments instanciés dans le Viewpager, de façon à ce que je puisse accéder à l'instance du fragment en cours dans l'Activity.
J'ai suivi plusieurs méthodes notamment créer un Hashmap et stocker la position et le fragment instancié dans getItem(), mais mon problème viens lorsque j'appelle ma méthode publique "ViewPager#getFragments" depuis l'activity, cela me créer une exception NullPointer.
Voici le code du ViewPagerAdapter
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| private Map<Integer, Fragment> fragments;
public ViewPagerAdapter(FragmentManager fm) {
super(fm);
}
public Fragment getFragments(int key) {
return fragments.get(key);
}
@Override
public Fragment getItem(int position) {
fragments = new HashMap<>();
Fragment t = new TextFragment();
fragments.put(position, t);
return t;
} |
MainActivity
adapter.getFragments(vp.getCurrentItem())
Ca me renvoi uneException Nullpointer.
Avez vous une solution ou une piste afin de résoudre ce problème ?
j'ai cherché dans les cours et tutoriels Android mais je n'ai rien trouvé.
Je vous serai très reconnaissant.
Merci
Partager