English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
ViewPager possède une méthode appelée :
setPageTransformer(boolean reverseDrawingOrder, PageTransformer transformer)
Utilisé pour définir l'effet d'animation lors du basculement de ViewPager.
Ici, nous devons définir une PageTransformer personnalisée pour obtenir l'effet d'offset d'animation nécessaire !
public class ScrollOffsetTransformer implements PageTransformer { private static final float MIN_SCALE = 0.85F; /** * Le paramètre position indique la position de la page par rapport au centre de l'écran. C'est une propriété dynamique qui change avec le défilement de la page. * Lorsque une page (page) remplit toute la surface de l'écran, la valeur de positoin est 0; Lorsque une page (page) vient juste de quitter le côté droit (gauche) de l'écran, la valeur de position est1(-1); * Lorsque deux pages ont été défilées à mi-chemin, l'une des pages est-0.5,l'autre page est 0.5. * basé sur la position de la page sur l'écran, à travers des méthodes telles que setAlpha(), setTranslationX * par l'intermédiaire de la méthode setScaleY() ou setScaleY() pour définir les propriétés de la page, créer des animations de glissement personnalisées. */ @Override public void transformPage(View view, float position) { // TODO Auto-bouchon de méthode généré float scaleFactor = Math.max(MIN_SCALE, 1 - Math.abs(position)); float rotate = 30 * Math.abs(position); float transla = 50 * Math.abs(position); if (position > 0) { view.setScaleX(scaleFactor); view.setScaleY(scaleFactor); view.setRotationY(-rotate); view.setTranslationX(-transla); } else { view.setScaleX(scaleFactor); view.setScaleY(scaleFactor); view.setRotationY(rotate); view.setTranslationX(transla); } } }
Puis
viewPager
Ajouter
viewPager.setPageTransformer(true, new ScrollOffsetTransformer())
Ce que j'ai décrit ci-dessus est le Android viewpager que j'ai présenté aux amis. 3Méthode de mise en œuvre de la Galerie D, j'espère qu'elle vous sera utile. Si vous avez des questions, laissez-moi un message, l'éditeur répondra à temps. Je remercie également tous ceux qui soutiennent le site de tutoriels d'alarme !
Déclaration : Le contenu de cet article est extrait du réseau, propriété de l'auteur original, contribué et téléchargé par les utilisateurs d'Internet. Ce site n'en possède pas la propriété, n'a pas été édité par l'homme, et n'assume pas la responsabilité des responsabilités juridiques associées. Si vous trouvez du contenu présumé violer les droits d'auteur, veuillez envoyer un e-mail à : notice#oldtoolbag.com (veuillez remplacer # par @ lors de l'envoi d'un e-mail pour signaler une violation, et fournir des preuves pertinentes. Une fois vérifié, ce site supprimera immédiatement le contenu présumé enfreindre les droits d'auteur.