Home

Awesome

CircleCI License Maven Central

ViewPagerTransforms

Library containing common animations needed for transforming ViewPager scrolling on Android v13+. This library is a rewrite of the JazzyViewPager library and owes credit of the animation concepts directly to its source. The purpose of this rewrite is to provide an easier to use and extend implementation of ViewPager animations.

Demo

Getting Started (Gradle / Android Studio)

Add gradle dependency to your application.

implementation 'com.ToxicBakery.viewpager.transforms:view-pager-transforms:2.0.24'

After configuration, instantiate the transformer animation you wish to use and set it as the page transformer.

// Reference (or instantiate) a ViewPager instance and apply a transformer
pager = (ViewPager) findViewById(R.id.container);
pager.setAdapter(mAdapter);
pager.setPageTransformer(true, new RotateUpTransformer());

Creating Custom Transforms

All ViewPagerTransform implementations extend ABaseTransformer providing useful hooks improving readability of animations and basic functionality important when switching between animations. ABaseTransformer provides three lifecycle hooks and two flags for default handling of hiding offscreen fragments and mimicking the default paging functionality of the ViewPager.

Building

This project is built with Gradle using the Gradle Wrapper script.

./gradlew build

Creating Local Versions

You can modify this project and create local packages with via the maven publish plugin used in the build scripts.

./gradlew publishToMavenLocal