Comment synchroniser le contenu d'une vue en fonction de la position de défilement dans ScrollView frère?

StackOverflow https://stackoverflow.com/questions/1635699

Question

J'ai étendu LinearLayout (vertical) pour créer un composant composé personnalisé. Celui-ci contient à son tour deux enfants:

  • une vue personnalisée dessinée directement sur la toile de la vue.
  • un HorizontalScrollView - > LinearView (Horizontal) - > Plusieurs vues personnalisées.

Je souhaite maintenant redessiner la vue personnalisée afin qu'elle corresponde au contenu visible de la vue de défilement . La raison en est que le grand nombre de composants personnalisés dans la vue de défilement sont principalement statiques et qu'il convient de les dessiner à l'avance, tandis que la vue de dessus est censée être très dynamique et se rapporter à tout ce qui est visible dans la vue de défilement.

J'espère avoir clarifié le problème / l'idée. Je ne suis pas sûr que ce soit la meilleure approche, et j'aimerais entendre vos suggestions sur des solutions alternatives ou peut-être une idée sur la façon de déclencher un événement de retrait chaque fois que la position de défilement change dans HorizontalScrollView.

Merci!

Était-ce utile?

La solution

Vous pouvez demander à votre activité d’écouter l’adaptateur de vue à défilement. dans l'adaptateur, chaque fois que la position de défilement change, vous exécutez le délégué dans l'activité. De cette façon, l’activité peut mettre à jour le reste des vues lors du changement de vue.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top