The article on how this library was created is now published. You can read it on this link here. →.
Download the APK file from here on your Android phone and enjoy the Demo App :)
Since the v1.2.0, all new updates will only support
androidx
widgets. If you want to useandroid.support
, then use v1.0.0.
Add EasyFlipViewPager
in app's build.gradle
file:
implementation 'com.wajahatkarim:easyflipviewpager:2.0.1'
Or add EasyFlipViewPager
as a new dependency inside your pom.xml
<dependency>
<groupId>com.wajahatkarim</groupId>
<artifactId>easyflipviewpager</artifactId>
<version>2.0.1</version>
<type>pom</type>
</dependency>
Just create an object of either BookFlipPageTransformer
or CardFlipPageTransformer
and assign it to your ViewPager
object by calling ViewPager#setPageTransformer(true, myTransformerObject)
.
Use these new PageTransformer
classes for ViewPager2
instance: BookFlipPageTransformer2
or CardFlipPageTransformer2
// Get ViewPager2 and Set Adapter
myViewPager2 = findViewById(R.id.myViewPager2);
pagerAdapter = new MyPagerAdapter(this);
myViewPager2.setAdapter(pagerAdapter);
// Create an object of page transformer
CardFlipPageTransformer2 cardFlipPageTransformer = new CardFlipPageTransformer2();
// Enable / Disable scaling while flipping. If false, then card will only flip as in Poker card example.
// Otherwise card will also scale like in Gallery demo. By default, its true.
cardFlipPageTransformer.setScalable(false);
// Assign the page transformer to the ViewPager2.
myViewPager2.setPageTransformer(cardFlipPageTransformer);
// Get ViewPager2 and Set Adapter
myViewPager2 = findViewById(R.id.myViewPager2);
pagerAdapter2 = new MyPagerAdapter(this);
myViewPager2.setAdapter(pagerAdapter);
// Create an object of page transformer
BookFlipPageTransformer2 bookFlipPageTransformer = new BookFlipPageTransformer2();
// Enable / Disable scaling while flipping. If true, then next page will scale in (zoom in). By default, its true.
bookFlipPageTransformer.setEnableScale(true);
// The amount of scale the page will zoom. By default, its 5 percent.
bookFlipPageTransformer.setScaleAmountPercent(10f);
// Assign the page transformer to the ViewPager2.
myViewPager2.setPageTransformer(bookFlipPageTransformer);
Wajahat Karim
Copyright 2020 Wajahat Karim
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.