Jump to content

Archived

This topic is now archived and is closed to further replies.

jok

[Résolu] Utilisation de Fragment obligatoire pour une navigation horizontale ?

Recommended Posts

Bonjour,

Depuis quelques semaines, je suis sur un projet qui a pour but d'afficher une sorte de diaporama d'images récupérées dynamiquement depuis un dossier et affichées à l'écran une à une. La navigation d'image en image se fait à l'aide d'un "swipe" horizontal, j'utilise pour cela un ViewPager.

Tout fonctionne bien pour le moment, mais je souhaiterais ajouter un système de Tab permettant d'aller à des ImageView bien spécifiques, ce qui remet en cause pas mal de choses dans mon développement, notamment sur la bonne utilisation du ViewPager.

Tout d'abord, voici un exemple de ce que cela peut donner graphiquement :

http://d.pr/i/TME2

Ma première question est : y a t-il un moyen de récupérer une ImageView précise en utilisant un PagerAdapter ou faut-il absolument passer par un FragmentPagerAdapter (qui lui permettra de récupérer une image contenue dans un Fragment grâce à une fonction getItem(int arg0))?

Dans le cas où je dois effectivement passer par une liste de Fragment, est-ce que la solution est adaptée à mon cas puisque je dois afficher un très grand nombre d'images ? Si oui, comment puis-je faire une liste dynamique de Fragment ?

Si vous avez des questions ou des conseils à me donner sur ce type de navigation, n'hésitez pas car j'avoue être un peu perdu.

Merci d'avance !

EDIT

Je suis parti sur la solution du FragmentPagerAdapter, avec un Fragment contenant mes ImageView. Maintenant que j'arrive à passer les bons paramètres pour récupérer l'instance souhaitée de mon Fragment (par exemple : monFragment{4139b9c8}) grâce à la méthode getItem(i), il faut que je réussisse à trouver comment rafraîchir ma FragmentActivity pour que le bon Fragment soit affiché. Si vous avez des idées, n'hésitez pas !

EDIT

J'ai trouvé !

Il ne faut pas utiliser la méthode getItem(i) du FragmentPagerAdapter mais il faut utiliser la méthode setCurrentItem(id) du ViewPager pour afficher le fragment correspondant. On peut aussi passer un booléen en deuxième argument pour afficher ou non un smoothScroll jusqu'à l'item sélectionné. Plus d'infos ici.

Share this post


Link to post
Share on other sites





×
×
  • Create New...