Skip to content

Instantly share code, notes, and snippets.

@imhardiklakhani
Created March 27, 2018 05:42
Show Gist options
  • Save imhardiklakhani/1483554b8b66a742d4a9796be6a22066 to your computer and use it in GitHub Desktop.
Save imhardiklakhani/1483554b8b66a742d4a9796be6a22066 to your computer and use it in GitHub Desktop.
AntiClockSpinTransformation Animation in ViewPager
package example.andrdoitechweb.viewpagertransformer.Transformation;
import android.support.v4.view.ViewPager;
import android.util.Log;
import android.view.View;
public class AntiClockSpinTransformation implements ViewPager.PageTransformer {
@Override
public void transformPage(View page, float position) {
page.setTranslationX(-position * page.getWidth());
if (Math.abs(position) < 0.5){
page.setVisibility(View.VISIBLE);
page.setScaleX(1-Math.abs(position));
page.setScaleY(1-Math.abs(position));
}
else if (Math.abs(position) > 0.5){
page.setVisibility(View.GONE);
}
if (position < -1){ // [-Infinity,-1)
// This page is way off-screen to the left.
page.setAlpha(0);
}
else if (position <= 0){ // [-1,0]
page.setAlpha(1);
page.setRotation(360*(1-Math.abs(position)));
}
else if (position <= 1){ // (0,1]
page.setAlpha(1);
page.setRotation(-360*(1-Math.abs(position)));
}
else { // (1,+Infinity]
// This page is way off-screen to the right.
page.setAlpha(0);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment