The PageTransformer library which support ViewPager and ViewPager2.
dependencies {
implementation 'io.github.vejei.pagetransformer:pagetransformer:x.y.z'
}If you don't need any configuration use SimplePageTransformer directly, passing in the required transformer name.
// ViewPager
ViewPager viewPager = view.findViewById(R.id.view_pager);
viewPager.setPageTransformer(false, new SimplePageTransformer(SimplePageTransformer.CUBE_INSIDE));
// ViewPager2
ViewPager2 viewPager = view.findViewById(R.id.view_pager2);
viewPager.setPageTransformer(new SimplePageTransformer(SimplePageTransformer.CUBE_INSIDE));Or if you need any configuration, like the cube camera distance, construct the corresponding transformer object:
// ViewPager
ViewPager viewPager = view.findViewById(R.id.view_pager);
viewPager.setPageTransformer(false, new CubeInsideTransformer(20));
// ViewPager2
ViewPager2 viewPager = view.findViewById(R.id.view_pager2);
viewPager.setPageTransformer(new new CubeInsideTransformer(20));For detailed examples, see the samples app.
The all PageTransformerName of the SimplePageTransformer including:
CUBE_INSIDECUBE_OUTSIDEDEPTHFADE_SLIDEFADEFANGATEROTATE_DOWNROTATE_UPROTATE_HORIZONTALROTATE_VERTICALSCALESIDE_BY_SIDESTACK_BOTTOMSTACK_TOPZOOM_INZOOM_OUT
All currently available transformers including:
CubeInsideTransformerCubeOutsideTransformerDepthTransformerFadeSlideTransformerFadeTransformerFanTransformerGateTransformerRotateDownTransformerRotateUpTransformerRotateHorizontalTransformerRotateVerticalTransformerScaleTransformerSideBySideTransformerStackBottomTransformerStackTopTransformerZoomInTransformerZoomOutTransformer



