English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
ViewPager tiene un método llamado:
setPageTransformer(boolean reverseDrawingOrder, PageTransformer transformer)
usado para configurar el efecto de animación al cambiar de página en ViewPager.
¡Aquí solo necesitamos personalizar un PageTransformer para lograr el efecto de desplazamiento de animación necesario!
public class ScrollOffsetTransformer implements PageTransformer { private static final float MIN_SCALE = 0.85F; /** * el parámetro position indica la posición de la página dada en relación con el centro de la pantalla. Es una propiedad dinámica que cambia con el desplazamiento de la página. * cuando una página (page) llena toda la pantalla, el valor de positoin es 0; cuando una página (page) acaba de salir por la derecha (izquierda) de la pantalla, el valor de position es1(-1); * cuando ambas páginas se hayan desplazado a la mitad, una de las páginas es-0.5,mientras que otra página es 0.5。 * basado en la posición de la página en la pantalla, a través de métodos como setAlpha() y setTranslationX * usar métodos como setScaleY() para establecer las propiedades de la página y crear animaciones de deslizamiento personalizadas. */ @Override public void transformPage(View view, float position) { // TODO Auto-generado stub de método 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); } } }
Luego
viewPager
Añadir
viewPager.setPageTransformer(true, new ScrollOffsetTransformer())
Lo que se menciona anteriormente es lo que el editor les ha presentado sobre Android viewpager 3Métodos de implementación de la galería D, espero que les sea útil. Si tienen alguna pregunta, déjenme un mensaje, el editor responderá a tiempo. También les agradezco mucho el apoyo a la página web de tutorial de gritos!
Declaración: el contenido de este artículo se obtiene de la red, pertenece al autor original, el contenido se contribuye y carga espontáneamente por los usuarios de Internet, este sitio no posee los derechos de propiedad, no se ha editado artificialmente y no asume la responsabilidad legal correspondiente. Si encuentra contenido sospechoso de copyright, por favor envíe un correo electrónico a: notice#oldtoolbag.com (al enviar un correo electrónico, por favor reemplace # con @) para denunciar y proporcionar evidencia relevante. Una vez verificada, este sitio eliminará inmediatamente el contenido sospechoso de infracción.